Explorar o código

TFileStream: use SysErrorMessage in exception message if available

git-svn-id: trunk@44200 -
ondrej %!s(int64=5) %!d(string=hai) anos
pai
achega
a5ed5bd942
Modificáronse 1 ficheiros con 12 adicións e 0 borrados
  1. 12 0
      rtl/objpas/classes/streams.inc

+ 12 - 0
rtl/objpas/classes/streams.inc

@@ -1276,9 +1276,21 @@ begin
 
   If (THandle(FHandle)=feInvalidHandle) then
     If Mode=fmcreate then
+    begin
+      {$if declared(GetLastOSError)}
+      raise EFCreateError.createfmt(SFCreateErrorEx,[AFileName, SysErrorMessage(GetLastOSError)])
+      {$else}
       raise EFCreateError.createfmt(SFCreateError,[AFileName])
+      {$endif}
+    end
     else
+    begin
+      {$if declared(GetLastOSError)}
+      raise EFOpenError.Createfmt(SFOpenErrorEx,[AFilename, SysErrorMessage(GetLastOSError)]);
+      {$else}
       raise EFOpenError.Createfmt(SFOpenError,[AFilename]);
+      {$endif}
+    end;
 end;