Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.28;
Скачать: CL | DM;

Вниз

Как получить ID-шники нитей (Threads) процесса ?   Найти похожие ветки 

 
Phantomaz   (2004-01-10 16:44) [0]

Как получить ID-шники нитей (Threads) процесса,
если известен его ID (ProcessID) ?


 
YuRock ©   (2004-01-10 16:55) [1]

Thread32First/Thread32Next


 
Burmistroff   (2004-01-10 16:57) [2]

OpenProcess, а дальше - NtQuerySystemInformation.

Либо (что значительно проще):
(ex - массив DWORD"ов)

var
 SnapProcHandle: THandle;
 ThreadEntry: TThreadEntry32;
 Next: Boolean;
begin
 try
   ex[0]:=0;
   SnapProcHandle := CreateToolhelp32Snapshot(TH32CS_SNAPTHREAD, 0);
   if SnapProcHandle <> THandle(-1) then
   begin
     ThreadEntry.dwSize := Sizeof(ThreadEntry);
     Next := Thread32First(SnapProcHandle, ThreadEntry);
     while Next do
     begin
       if ThreadEntry.th32OwnerProcessID = ProcessID then
         begin
           ex[0]:=ex[0]+1;
           ex[ex[0]]:=ThreadEntry.th32ThreadID;
         end;
       Next := Thread32Next(SnapProcHandle, ThreadEntry);
     end;
     CloseHandle(SnapProcHandle);
   end;
 finally
 end;
end;


 
VMcL ©   (2004-01-11 04:12) [3]

>>Burmistroff  (10.01.04 16:57) [2]

Замечание: Win 2000 or higher.


 
VMcL ©   (2004-01-11 04:17) [4]

VMcL ©  (11.01.04 04:12) [3] относится к NtQuerySystemInformation.


 
Phantomaz   (2004-01-11 13:56) [5]

Спасибо !



Страницы: 1 вся ветка

Текущий архив: 2004.03.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.021 c
14-1077488476
Германн
2004-02-23 01:21
2004.03.28
Украинское ТВ


14-1078218503
Cobalt
2004-03-02 12:08
2004.03.28
Интересный проект - неинтересный проект


6-1073415772
Alien
2004-01-06 22:02
2004.03.28
Завершение работы


9-1062154209
Darrin
2003-08-29 14:50
2004.03.28
Сетевые шахматы


14-1077984008
Dimaz-z
2004-02-28 19:00
2004.03.28
Проблемка. Linux.