Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.14;
Скачать: CL | DM;

Вниз

GetFileSize   Найти похожие ветки 

 
nikv ©   (2006-09-01 13:07) [0]

Удалено модератором
Примечание: СПАМ


 
Dmitrij_K   (2006-09-01 13:31) [1]

H:=FileOpen("filaname",fmOpenRead);
if H>0 then
begin
 GetFileSize(h,@Int);//Int:Integer; - размер
 CloseHandle(h);
end;

лучше использовать FindFirst+FindClose файл не надо открывать и размер показывает правильно если файл >4гб


 
han_malign ©   (2006-09-01 13:42) [2]


> GetFileSize(h,@Int);//Int:Integer; - размер

- и ты реально этим пользуешься?

для лучшего осознания, привожу не самую оптимальную схему:
  LowDWORD:= GetFileSize(h,@HighInt);
  if(LowDWORD <> $FFFFFFFF)then int64Result:=int64(HighInt)shl 32 or LowDWORD
  else  begin
      Error:= GetLastError;
      int64Result:= -1;
  end;
а по нашему, по простому:
  dwFileSize:= GetFileSize(h,nil);//до 4 Гb
  if(LowDWORD = $FFFFFFFF)then begin
      Error:= GetLastError;
      .........
  end;


 
begin...end ©   (2006-09-01 13:55) [3]

> han_malign ©   (01.09.06 13:42) [2]
> для лучшего осознания, привожу не самую оптимальную схему:

Это неправильная схема. Двойное слово, равное $FFFFFFFF, может являться корректной младшей частью результата. Лучше так:

var
 Res: Int64;
begin
 Int64Rec(Res).Lo := GetFileSize(H, @Int64Rec(Res).Hi);
 if (Int64Rec(Res).Lo = $FFFFFFFF) and (GetLastError <> NO_ERROR) then
   // ошибка
end


 
Dmitrij_K   (2006-09-01 14:01) [4]


> > GetFileSize(h,@Int);//Int:Integer; - размер - и ты реально
> этим пользуешься?

опечатался, с кем не бывает


 
Джо ©   (2006-09-01 14:13) [5]

http://delphimaster.net/view/2-1157101444/



Страницы: 1 вся ветка

Текущий архив: 2007.01.14;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.101 c
15-1166794248
Pit_q
2006-12-22 16:30
2007.01.14
Интересно, у всех сотрудников ГИБДД есть водительские права?


15-1166470318
Kolan
2006-12-18 22:31
2007.01.14
А как установить поддержку азиатских языков в Windows?


1-1163803640
SkySpeed
2006-11-18 01:47
2007.01.14
Как определелить конец распечатки информации?


3-1161855268
lama
2006-10-26 13:34
2007.01.14
Заполнение поле в DBGrid


2-1166773983
apot
2006-12-22 10:53
2007.01.14
serv tom RN01.DBF