procedure TProcList.GetProcessInfo;
var
Fi : TSHFileInfo;
tw : Word;
ts : array[0..MAX_PATH] of char;
PObj : TProcessInfo;
var
i:Integer;
snap : THandle;
pe32 : TPROCESSENTRY32;
begin
snap := 0;
try
snap := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if snap <> 0 then begin
pe32.dwSize := SizeOf(TPROCESSENTRY32);
if Process32First(snap, pe32) then begin
AddProcess(pe32);
while Process32Next(snap, pe32) do
AddProcess(pe32);
end;
end;
finally
CloseHandle(snap);
end;
End;
——节选自 ProcList 控件的源代码。