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

Вниз

Помогите с размером файла   Найти похожие ветки 

 
phantom2040 ©   (2003-05-15 09:24) [0]

Привет Мастера!!!
Может вопрос прозаический но мне нужно вычислить размер файла, причем без разницы какого, я вроде делаю так

procedure TfrmJourn.jrn_fileExecute(Sender: TObject);
var m,n: integer;
buf, buf1: string;
F : file;
begin
if opdJrn.Execute then begin
m:=opdJrn.Files.Count;n:=0;
repeat
buf:=ExtractFileName(opdJrn.Files.ValueFromIndex[n])+"; ";
buf1:=buf1+buf;
AssignFile(F,buf);
label4.Caption:=IntToStr(FileSize(F));
inc(n);
until n=m;
leNmFile.Text:=buf1;
end;
end;
в этом куске я в опен диалоге выбираю 1 или несколько файлов, и он имена файлов помещает в поле leNmfile, хотелось бы что бы и размер подсчитывался сразу, но выводится ошибка 103, может я чего то упустил, да сразу хочу оговориться, что я знаю что будет просчитан размер последнего файла в списке,
Помогите....


 
MBo ©   (2003-05-15 09:26) [1]

To use FileSize, the file must be open


 
phantom2040 ©   (2003-05-15 09:30) [2]

А как его открыть???
И какие параметры открытия???


 
MBo ©   (2003-05-15 09:48) [3]

FileOpen, например.

А проще Findfirst использовать.


 
DVM ©   (2003-05-15 10:04) [4]

function FileSize( const FileName : String ) : Integer;
var FD : TWin32FindData;
FH : THandle;
begin
FH := FindFirstFile( PChar( FileName ), FD );
Result := 0;
if FH = INVALID_HANDLE_VALUE then exit;
Result := FD.nFileSizeLow;
if ((FD.nFileSizeLow and $80000000) <> 0) or
(FD.nFileSizeHigh <> 0) then Result := -1;
FindClose( FH );
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
4-83825
kpv-10k
2003-03-19 21:05
2003.05.26
Заголовок активного окна...


3-83413
Salvator
2003-05-05 09:20
2003.05.26
Нужна мат. модель БД


1-83561
Till
2003-05-13 14:37
2003.05.26
Export in Excel


1-83483
Bel
2003-05-14 17:17
2003.05.26
MessageDlg в дополнительном потоке


4-83797
Nark
2003-03-25 22:35
2003.05.26
Перехват ALT+F4 Delphi приложением