Jak uzyskać listę plików ( EXE) uruchomionych w systemie
Adam Boduch
Trzeba w tym celu skorzystać z nisko poziomowych funkcji API:
uses TlHelp32;
procedure TForm1.btnAddEXEClick(Sender: TObject);
var
_HWND : THandle;
Proc : TProcessEntry32;
begin
_HWND := CreateToolHelp32SnapShot(TH32CS_SNAPALL,0);
Proc.dwSize:=SizeOf(Proc); // okresl rozmiar struktory
if Integer(Process32First(_HWND, Proc)) <> 0 then
repeat
ListBox1.Items.Add(Proc.szExeFile); // dodaje sciezkie pliku do ListBox'a
until Integer(Process32Next(_HWND, Proc)) = 0; // dopoki wartosc nie osiagnie 0
CloseHandle(_HWND);
end;
Powyższy kod wyświetla listę nazw plików, np.:
gg.exe
winword.exe
...
a jak odczytać pełne ścieżki dostępu do tych plików, np.
C:\Program Files\Gadu-Gadu\gg.exe
C:\Program Files\Microsoft Office\OFFICE10\winword.exe
...
??
niestety to się nazywa proces :)
to sie nazywa "proces", a nie "plik" :P