Как узнать, используется ли файл в данный момент другим приложением 2




function ApplicationUse(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;

// Далее следует пример использования этой функции:

procedure TForm1.Button1Click(Sender: TObject);
begin
  if ApplicationUse('c:\project1.exe') then
    ShowMessage('Application in use')
  else
    ShowMessage('Application not in use');
end;


Copyright © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте