Probier es mal so. Sollte funktionieren. Wurde bei Google zusammengesucht
Delphi-Quellcode:
{$IFDEF WIN32}
function IsFileInUse(
const FileName:
string): Boolean;
asm
push ebx
push 0
push 0
push OPEN_EXISTING
push 0
{nil}
push 0
push GENERIC_READ
push &FileName
call CreateFile
cmp eax, INVALID_HANDLE_VALUE
setz bl
push eax
call CloseHandle
mov al, bl
pop ebx
end;
{$ELSE}
function IsFileInUse(
const FileName:
string): Boolean;
var
h: THandle;
begin
h := CreateFile(PChar(FileName), GENERIC_READ, 0,
nil, OPEN_EXISTING, 0, 0);
Result := h = INVALID_HANDLE_VALUE;
CloseHandle(h);
end;
{$ENDIF}