소스 검색

TFileStream: use SysErrorMessage in exception message if available

git-svn-id: trunk@44200 -
ondrej 5 년 전
부모
커밋
a5ed5bd942
1개의 변경된 파일12개의 추가작업 그리고 0개의 파일을 삭제
  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 (THandle(FHandle)=feInvalidHandle) then
     If Mode=fmcreate then
     If Mode=fmcreate then
+    begin
+      {$if declared(GetLastOSError)}
+      raise EFCreateError.createfmt(SFCreateErrorEx,[AFileName, SysErrorMessage(GetLastOSError)])
+      {$else}
       raise EFCreateError.createfmt(SFCreateError,[AFileName])
       raise EFCreateError.createfmt(SFCreateError,[AFileName])
+      {$endif}
+    end
     else
     else
+    begin
+      {$if declared(GetLastOSError)}
+      raise EFOpenError.Createfmt(SFOpenErrorEx,[AFilename, SysErrorMessage(GetLastOSError)]);
+      {$else}
       raise EFOpenError.Createfmt(SFOpenError,[AFilename]);
       raise EFOpenError.Createfmt(SFOpenError,[AFilename]);
+      {$endif}
+    end;
 end;
 end;