Home » Tipps & Tricks » Dateien/Verzeichnisse » Dateieigenschaften » Ist eine Datei in Benutzung
Ist eine Datei in Benutzung
Die folgende Funktion prüft, ob eine Datei in Benutzung ist. Als Parameter muss der Pfad+Dateiname der Datei übergeben werden. Gibt die Funktion True zurück ist die Datei in Benutzung.
function IsFileInUse(Path: string): boolean; var hFile: THandle; begin Result := False; if not FileExists(Path) then Exit; hFile := CreateFile(pchar(Path), GENERIC_READ or GENERIC_WRITE or GENERIC_EXECUTE, 0, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0); Result := hFile = INVALID_HANDLE_VALUE; if not Result then CloseHandle(hFile); end; {function IsFileInUse() ...}
Aufgerufen werden kann die Funktion beispielsweise so:
procedure TForm1.Button1Click(Sender: TObject); begin if IsFileInUse(Application.Exename) then Showmessage('Die Datei ist in Benutzung'); end;