Browse Source

* added 64bit fileseek

peter 24 năm trước cách đây
mục cha
commit
36bafdc7aa
5 tập tin đã thay đổi với 52 bổ sung7 xóa
  1. 12 2
      rtl/go32v2/sysutils.pp
  2. 8 2
      rtl/objpas/filutilh.inc
  3. 9 1
      rtl/os2/sysutils.pp
  4. 12 1
      rtl/unix/sysutils.pp
  5. 11 1
      rtl/win32/sysutils.pp

+ 12 - 2
rtl/go32v2/sysutils.pp

@@ -139,6 +139,13 @@ begin
 end;
 
 
+Function FileSeek (Handle : Longint; FOffset,Origin : Int64) : Int64;
+begin
+  {$warning need to add 64bit call }
+  FileSeek:=FileSeek(Handle,Longint(FOffset),Longint(Origin));
+end;
+
+
 Procedure FileClose (Handle : Longint);
 var
   Regs: registers;
@@ -649,7 +656,10 @@ Finalization
 end.
 {
   $Log$
-  Revision 1.5  2001-06-03 15:18:01  peter
+  Revision 1.6  2001-10-25 21:23:49  peter
+    * added 64bit fileseek
+
+  Revision 1.5  2001/06/03 15:18:01  peter
     * eoutofmemory and einvalidpointer fix
 
   Revision 1.4  2001/02/20 22:14:19  peter
@@ -658,7 +668,7 @@ end.
   Revision 1.3  2000/08/30 06:29:19  michael
   + Merged syserrormsg fix
 
-  
+
     Revision 1.2  2000/08/20 15:46:46  peter
     * sysutils.pp moved to target and merged with disk.inc, filutil.inc
 

+ 8 - 2
rtl/objpas/filutilh.inc

@@ -19,7 +19,9 @@ Type
 
 Type 
   TSearchRec = Record
-    Time,Size, Attr : Longint;
+    Time : Longint;
+    Size : Int64;
+    Attr : Longint;
     Name : TFileName;
     ExcludeAttr : Longint;
     FindHandle : THandle;
@@ -62,6 +64,7 @@ Function FileCreate (Const FileName : String) : Longint;
 Function FileRead (Handle : Longint; Var Buffer; Count : longint) : Longint;
 Function FileWrite (Handle : Longint; const Buffer; Count : Longint) : Longint;
 Function FileSeek (Handle,FOffset,Origin : Longint) : Longint;
+Function FileSeek (Handle : Longint; FOffset,Origin : Int64) : Int64;
 Procedure FileClose (Handle : Longint);
 Function FileTruncate (Handle,Size: Longint) : boolean;
 Function FileAge (Const FileName : String): Longint;
@@ -80,7 +83,10 @@ Function FileSearch (Const Name, DirList : String) : String;
 
 {
   $Log$
-  Revision 1.4  2001-04-16 18:34:46  florian
+  Revision 1.5  2001-10-25 21:23:49  peter
+    * added 64bit fileseek
+
+  Revision 1.4  2001/04/16 18:34:46  florian
     * updates from Armin commited
 
   Revision 1.3  2001/01/18 22:09:09  michael

+ 9 - 1
rtl/os2/sysutils.pp

@@ -149,6 +149,11 @@ asm
 @FSeekEnd:
 end;
 
+Function FileSeek (Handle : Longint; FOffset,Origin : Int64) : Int64;
+begin
+  {$warning need to add 64bit call }
+  Result:=FileSeek(Handle,Longint(Foffset),Longint(Origin));
+end;
 
 procedure FileClose (Handle: longint);
 begin
@@ -774,7 +779,10 @@ end.
 
 {
   $Log$
-  Revision 1.12  2001-06-03 15:18:01  peter
+  Revision 1.13  2001-10-25 21:23:49  peter
+    * added 64bit fileseek
+
+  Revision 1.12  2001/06/03 15:18:01  peter
     * eoutofmemory and einvalidpointer fix
 
   Revision 1.11  2001/05/21 20:50:19  hajny

+ 12 - 1
rtl/unix/sysutils.pp

@@ -82,6 +82,14 @@ begin
 end;
 
 
+Function FileSeek (Handle : Longint; FOffset,Origin : Int64) : Int64;
+
+begin
+  {$warning need to add 64bit call }
+  FileSeek:=fdSeek (Handle,FOffset,Origin);
+end;
+
+
 Procedure FileClose (Handle : Longint);
 
 begin
@@ -465,7 +473,10 @@ end.
 {
 
   $Log$
-  Revision 1.10  2001-06-03 20:19:09  peter
+  Revision 1.11  2001-10-25 21:23:49  peter
+    * added 64bit fileseek
+
+  Revision 1.10  2001/06/03 20:19:09  peter
     * FSStat to StatFS
     * StatFS structure to TStatFS
 

+ 11 - 1
rtl/win32/sysutils.pp

@@ -100,6 +100,13 @@ begin
 end;
 
 
+Function FileSeek (Handle : Longint; FOffset,Origin : Int64) : Int64;
+begin
+  {$warning need to add 64bit call }
+  Result := longint(SetFilePointer(Handle, FOffset, nil, Origin));
+end;
+
+
 Procedure FileClose (Handle : Longint);
 begin
   if Handle<=4 then
@@ -679,7 +686,10 @@ Finalization
 end.
 {
   $Log$
-  Revision 1.9  2001-06-03 15:18:01  peter
+  Revision 1.10  2001-10-25 21:23:49  peter
+    * added 64bit fileseek
+
+  Revision 1.9  2001/06/03 15:18:01  peter
     * eoutofmemory and einvalidpointer fix
 
   Revision 1.8  2001/05/20 12:08:36  peter