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

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

как по изветсному PID процесса получить список его потоков с возм


Arnold ©   (2004-08-31 11:11:00) 

Пробую следующим образом. Но тут на сколько я понимаю он каждый цикл(2ой repeat) он начинает пробегать все потоки имеющиеся в системе. А как можно сделать чтобы просматривал за один цикл только те потоки которые принадлежат именно его потоку?

hSnap := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS or TH32CS_SNAPTHREAD, 0);
try
  pe.dwSize := SizeOf(TProcessEntry32);
  if Process32First(hSnap, pe) then repeat
   threadstruct.dwSize:=SizeOf(TThreadEntry32);
    if Thread32First(hSnap,ThreadStruct) then
    repeat
     if pe.th32ProcessID=ThreadStruct.th32OwnerProcessID then
     begin
      N:=pe.szExeFile;
      EnumThreadWindows(ThreadStruct.th32ThreadID,@EnumThreadWndProc,0);
     end;
    until
     not Thread32Next(hSnap, ThreadStruct);
  until not Process32Next(hSnap, pe);
finally
  CloseHandle(hSnap);


Digitman   (2004-08-31 13:02:00) [1]

никак


Наверх

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