Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

PID ы всех процессов системы [D3, D4, D5, D6, Win95/98, WinME, NT4, Win2k, WinXP]


mcs ©   (2002-06-22 22:35:00) 

Уважаемые Мастера!
Как получить PID"ы всех процессов системы,
зная их HANDLES и\или CAPTIONS? Если можно
с примером.


MBo   (2002-06-25 12:50:00) [1]

>Torry
uses ...tlhelp32


Torry   (2002-06-25 12:38:00) [2]

А уточни что такое:
pe32 : TPROCESSENTRY32


mcs   (2002-06-24 17:01:00) [3]

Thanks


crazy progman   (2002-06-24 15:48:00) [4]

Это для циклического получения всех PID"ов и имен исполняемых модулей в системе.
procedure TForm1.Button1Click(Sender: TObject);
var
snap : THandle;
pe32 : TPROCESSENTRY32;
i: boolean;
begin
ListBox1.Clear;
snap := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, dword(0));
pe32.dwSize := SizeOf(TPROCESSENTRY32);
i:=Process32First(snap, pe32);
i:=Process32Next(snap, pe32);
repeat
listbox1.Items.Add(pe32.szExeFile);
listbox2.Items.Add(IntToStr(pe32.th32ProcessID));
i:=Process32Next(snap, pe32);
until i=false;
CloseHandle(snap);
end;

Это для определения хендла окна по его caption.
FindWindow(lpClassName: PChar, lpWindowName: PChar): THANDLE;

Это для определения PID"а приложения похендлу окна
GetWindowThreadProcessID(
hwnd, //хендл окна
@ProcessID //переменная в которую
//функция PID возвратит
);


Наверх

Титульная страница Поиск, карта сайта Написать письмо