Erkennen ob eine Datei gerade benutzt wird
Hallo,
ich habe das Problem, dass ich bei mehreren Dateien gleichzeitig Änderungen vornehmen muss. Nun würde ich gerne irgendwie abfragen, ob die Dateien gerade benutzt werden. Gibt es da vielleicht eine einfach Funktion die einen Booleanwert zurückgibt? Danke! |
Re: Erkennen ob eine Datei gerade benutzt wird
Mir würde nur einfallen, ebenso zu versuchen die Datei exklusiv zu öffnen und zu schauen, ob ein Fehler auftritt. Wenn jemand eine Datei nur lesend öffnet, wird dabei natürlich kein Fehler auftreten.
Edit: Die Forensuche lockte mich zu diesem Thread |
Re: Erkennen ob eine Datei gerade benutzt wird
Versuchs mal damit:
Delphi-Quellcode:
function IsFileInUse(const fName: TFileName): Boolean;
var HFileRes: HFILE; begin if not FileExists(fName) then begin Result := false; Exit; end; 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; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz