Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.031 c
7-1073040090
Tahion2
2004-01-02 13:41
2004.03.28
Как узнать устаовлен ли Service Pack 1 в Windows XP?


1-1078571472
oleg_SYS
2004-03-06 14:11
2004.03.28
Как узнать реальный размер иконки?


3-1077912152
jafar
2004-02-27 23:02
2004.03.28
Передача параметра типа TDaateTime в TADOQuery


1-1078422320
white
2004-03-04 20:45
2004.03.28
Форма


7-1073425700
Cure
2004-01-07 00:48
2004.03.28
GetKeyNames




   Наверх