[TRUCOS DELPHI] Determinar si un archivo esta en uso.
delphi
function IsFileInUse(fName : string ) : boolean; var HFileRes : HFILE; begin Result := false; if not FileExists(fName) then exit; HFileRes := CreateFile(pchar(fName), GENERIC_READ or GENERIC_WRITE,0, nil, OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL, 0); Result := (HFileRes = INVALID_HANDLE_VALUE); if not Result then CloseHandle(HFileRes); end;
Ejemplo de uso:
delphi
procedure TForm1.Button1Click(Sender: TObject); begin if isfFileInUse('c:\windows\notepad.exe') then begin ShowMessage('File in use'); end else begin ShowMessage('File not in use'); end; end;
Saludos!