Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.03.20;
Скачать: [xml.tar.bz2];

Вниз

Список потоков (Threads) для процесса   Найти похожие ветки 

 
GMan   (2005-02-02 16:11) [0]

Решил уже для полноты картины (неутешительной) спросить, знает ли кто-нибудь как получить список потоков для выбранного процесса?


 
Игорь Шевченко ©   (2005-02-02 16:19) [1]

http://www.schevchenko.net.ru/SRC/QuerySystemInformation_60.zip


 
GMan   (2005-02-02 16:25) [2]

Спасибо, но я уже смотрел этот пример. Мне он не подходит, потому что придется слишком много переписывать, т.к. я получаю список процессов след. образом:

procedure GetProcessList();
var
 pe:TProcessEntry32;
 ph, snap:THandle;
 mh:hmodule;
 procs:array[0..$fff] of dword;
 count, cm:cardinal;
 i, j, z:integer;
 ModName:array[0..max_path] of char;
begin
   if not EnumProcesses(@procs, sizeof(procs), count) then
   begin
     exit;
   end;

   for i:= 0 to count div 4 - 1 do
     begin
       ph:=OpenProcess(PROCESS_QUERY_INFORMATION or PROCESS_VM_READ,
                     false, procs[i]);
       if ph>0 then
       begin
         EnumProcessModules(ph, @mh, 4, cm);
         if GetModuleFileNameEx(ph, mh, ModName, sizeof(ModName)) > 0 then
         begin
           _ProcPath := String(ModName);
           _PID := procs[i];
           _ProcHandle := "$" + IntToHex(ph, 8);
           if GetProcessMemoryInfo(ph, @FCounters, SizeOf(FCounters)) then
           begin
             _ProcCurrMem := FCounters.WorkingSetSize div 1024;
           end;
           _ProcPriority := GetPriorityClassString(GetPriorityClass(ph));
           GetFileOwner(_ProcPath, Domain, Username);
           _ProcOwner := Domain + "@" + Username;
         end;
         CloseHandle(ph);
       end;
       AddRows(1);
     end;
end;


 
Digitman ©   (2005-02-02 17:12) [3]


> GMan   (02.02.05 16:25) [2]


галиматья какая-то ..

у тебя какой вопрос был ?

> как получить список потоков


а ты что пишешь ?


> GetProcessList()


переводя с буржуйского на русский ты пишешь "ПолучитьСписокПроцессов"

ну и как соотносится тема вопроса с назначением ф-ции, хотя бы по ее имени ?


 
alpet   (2005-02-02 18:50) [4]

Потоки можно узнать с помощью toolhelp функций: Thread32first, Thread32next. Получить дескрипторы потоков, через OpenThread (Win2k +) или подключившись как отладчик к процессу.


 
DeadMeat ©   (2005-02-02 21:29) [5]


> ну и как соотносится тема вопроса с назначением ф-ции, хотя
> бы по ее имени ?


> Спасибо, но я уже смотрел этот пример. Мне он не подходит,
> потому что придется слишком много переписывать, т.к. я получаю
> список процессов след. образом
:

Ну не хочет человек переписывать... Ну чего тут поделать... ;)

---
...Death Is Only The Begining...



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

Форум: "WinAPI";
Текущий архив: 2005.03.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.037 c
1-1110188990
diman
2005-03-07 12:49
2005.03.20
перезагрузка прогаммы


14-1109524986
ve7al
2005-02-27 20:23
2005.03.20
Язык программирования Паскаль


4-1107333667
ТехникПТО
2005-02-02 11:41
2005.03.20
Flash в Webbrowsere


14-1109246916
Тульский
2005-02-24 15:08
2005.03.20
Экономические игры


4-1107353213
Eraser
2005-02-02 17:06
2005.03.20
Форма VCL и многопоточность...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский