![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Список процессов [D7, WinXP]
dkDimon © (2003-02-20 23:03:00)А как получить список всех процессов под Win9x и под WinXP (если я правильно понимаю, под ними по-разному это делается)?
Viktor Kushnir (2003-02-21 10:12:00) [1]Может и сработает.
procedure TForm1.Button1Click(Sender: TObject);
var
handler:thandle;
data:TProcessEntry32;
Name :String;
function return_name:string;
var
i:byte;
names:string;
begin
names:="";
i:=0;
while data.szExeFile[i] <> "" do
begin
names:=names+data.szExeFile[i];
inc(i);
end;
New(HND);
HND^ := Data.th32ProcessID;
Handles.Add(HND);
return_name:=names;
end;
begin
FreeHandles;
handler:=createtoolhelp32snapshot(TH32CS_SNAPALL,0);
if process32first(handler,data) then
begin
Name := return_name;
listbox1.Items.add(IntTOstr(Data.th32ProcessID)+" "+Name);
while process32next(handler,data) do
Begin
Name := return_name;
listbox1.Items.add(IntTOstr(Data.th32ProcessID)+" "+Name);
End;
end else showmessage("Ошибка получения информации :)");
CloseHandle(handler);
end;
MBo (2003-02-21 07:04:00) [2]ToolHelp32 функции.
По-другому только в NT (PSAPI)
dkDimon (2003-02-21 01:01:00) [3]Мне в общем-то все равно - по-разному, по одинаковому - самое главное КАК?
ZZ (2003-02-21 00:11:00) [4]Можно и по одинаковому