Попробуй дождаться освобождения файла, вот кусок из моей программы, подредактируй под себя:
Код:
1 2 3 4 5 6 7 8 9 10 11 | if (FileExists(FileName)) then begin
try i:= 0 ;
repeat i:=i+ 1 ;
HFileRes := CreateFile( PChar (FileName), GENERIC_READ or GENERIC_WRITE, 0 , nil , OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0 );
b := (HFileRes = INVALID_HANDLE_VALUE);
if (b) then
ELSE begin CloseHandle(HFileRes); BREAK; end ;
Label1 . Caption:= 'Жду освобождения файла: ' +IntToStr(i)+c13+ExtractFileName(FileName); Application . ProcessMessages; Sleep( 200 );
until (i> 99 );
if (i> 1 ) then Label1 . Caption:= 'Освободился' +c13+ExtractFileName(FileName); if (i> 99 ) then Label1 . Caption:= 'Занят' +c13+ExtractFileName(FileName); if (i> 1 ) then Application . ProcessMessages;
except end ;
|
Админ: Пользуемся тегами при оформлении кода!