Список процессов в Windows
Модератор: Модераторы
- bloodlines
- постоялец
- Сообщения: 100
- Зарегистрирован: 05.11.2008 10:26:19
Список процессов в Windows
Подскажите пожалуйста, как можно получить список запущенных процессов в WinXP 32? И как "убить" процесс зная его имя?
Как раз сегодня встретил: http://www.webdelphi.ru/2010/01/rabota- ... psapi-pas/
-
Padre_Mortius
- энтузиаст
- Сообщения: 1265
- Зарегистрирован: 29.05.2007 17:38:07
- Откуда: Спб
Можно так
Код: Выделить всё
uses ..., JwaTlHelp32;
....
var
c1, c2:Cardinal;
pe, pe1:TProcessEntry32W;
Node, Node1: TTreeNode;
begin
c1:=CreateToolHelp32Snapshot(TH32CS_SnapAll,0);
if c1=-1 then
begin
ShowMessage('Error');
Close;
end;
pe.dwSize:=sizeof(pe);
Node := TreeView1.Items.AddFirst(nil, 'Process');
if Process32FirstW(c1,pe) then
repeat
Node1 := TreeView1.Items.Add(Node, pe.szExeFile);
if pe.cntThreads<>0 then
begin
c2 := CreateToolHelp32Snapshot(TH32CS_SnapAll,pe.th32ProcessID);
if c1<>-1 then
begin
pe1.dwSize := SizeOf(pe1);
repeat
TreeView1.Items.AddChild(Node1, pe1.szExeFile);
until not Process32NextW(c2, pe1);
end;
end;
until not Process32NextW(c1,pe);
CloseHandle(c1);
end;