Versuche FileHandles eines laufenden Prozesses zu ermitteln. Der ProcessExplorer von
www.sysinternals.com kann das. Aber wie ermittle ich zu einem Prozess die entsprechend offenen Dateien. Einer eine Idee?
Nachfolgender Code soll entsprechend ergänzt werden.
Delphi-Quellcode:
procedure GetProcessList(const aProcessList: TStrings);
var
Snap: THandle;
ProcessE: TProcessEntry32;
begin
aProcessList.Clear;
Snap := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
try
ProcessE.dwSize := SizeOf(ProcessE);
if Process32First(Snap, ProcessE) then
Repeat
aProcessList.Add(ProcessE.szExeFile);
// alle Dateien dieses Prozesses???
Until not Process32Next(Snap, ProcessE)
else
RaiseLastOSError;
finally
CloseHandle(Snap);
end;
end;