--- ---

Here is a function to get the size of a file by using the native Pascal I/O and file management routines. The function returns -1 if the file doesn't exist.

    function GetFileSize(FName: string): Int64;
    var
      ch: File;
      OldMode: Integer;
    begin
      OldMode := FileMode;
      Result := -1;
      if not FileExists(FName) then Exit;
      try
        AssignFile(ch, FName);
        FileMode := 0;
        Reset(ch,1);
        Result := FileSize(ch);
      finally
        CloseFile(ch);
        FileMode := OldMode;
      end;
    end;