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

Вниз

Информация о процессе   Найти похожие ветки 

 
maxistent ©   (2006-09-15 20:27) [0]

Всем привет!  Есть у меня список процессов (EXE-name + id).
Вопрос: Как получить по id процесса след. данные:
1) используемая память (как в Диспетчере задач)
2) HandleCount (у этого процесса)
3) ThreadCount (у него же)
Необходимо, чтобы это работало в WinXP, Win 2000, WinNT.

примечание: у меня есть исходничОк, в котором всё это реализовано (используется функция NtQuerySystemInformation), но РАБОТАЕТ ТОЛЬНО НА WinXP, что, собственно, не устраивает...


 
Eraser ©   (2006-09-15 22:03) [1]

> [0] maxistent ©   (15.09.06 20:27)


> Как получить по id процесса след. данные:

через WMI.


 
maxistent ©   (2006-09-15 23:57) [2]

А можно поподробнее? Может есть кусочек кода?


 
Eraser ©   (2006-09-16 00:13) [3]

> [2] maxistent ©   (15.09.06 23:57)

второй пример http://www.delphikingdom.com/asp/viewitem.asp?catalogid=698


 
maxistent ©   (2006-09-16 01:03) [4]

Там везде "WbemScripting_TLB.PAS" <- А где это взять?! Там "TSWbemLocator" и прочая хрень... У меня даже таких модулей нету, млин...


 
Eraser ©   (2006-09-16 01:08) [5]

> [4] maxistent ©   (16.09.06 01:03)

там вроде написано где -
После того, как вы установили WMI SDK, импортируйте следующие библиотеки типов:
Active DS Type Library (Version 1.0)
Microsoft WMI Scripting v1.1 Library (Version 1.1)
Отлично, теперь в палитре компонентов у вас появились новые элементы, которые мы и будем в дальнейшем использовать.


 
maxistent ©   (2006-09-16 01:22) [6]

А без WMI можно как-нить обойтись? Ну не могу я им воспользоваться...


 
Eraser ©   (2006-09-16 01:27) [7]

> [6] maxistent ©   (16.09.06 01:22)

1. можно - через NtQuerySystemInformation.
2. почему не можешь?


 
maxistent ©   (2006-09-16 02:38) [8]

Вот, нашел кое-что:
(модуль PSApi)

function GetProcessMemoryInfo(Process: THandle; ppsmemCounters: PPROCESS_MEMORY_COUNTERS; cb: DWORD): BOOL;

Но как её корректно использовать? мож хто пацкажит?


 
Eraser ©   (2006-09-16 13:09) [9]

> [8] maxistent ©   (16.09.06 02:38)

а что MSDN говорит?


 
Ketmar ©   (2006-09-16 15:57) [10]

> [9] Eraser ©   (16.09.06 13:09)
наверное, кучу непонятных буржуйских букавак. %-)


 
maxistent ©   (2006-09-17 11:04) [11]

Ладно, c GetProcessMemoryInfo я разобрался вроде бы... А как получить такие данные, как кол-во дескрипторов у просесса (HandleCount) и кол-во потоков (ThreadCount) у него же? Или общее их кол-во в системе на тек. момент?



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

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

Наверх




Память: 0.49 MB
Время: 0.053 c
15-1167800015
Pas
2007-01-03 07:53
2007.01.28
Как перевести на Паскаль ?


15-1168429117
Post_
2007-01-10 14:38
2007.01.28
Шфрование...


2-1168610491
новыйЮзер
2007-01-12 17:01
2007.01.28
как отключить ctrl Alt Del


9-1142843534
Lambda
2006-03-20 11:32
2007.01.28
Файлы в GLMaterialLibrary из потока


3-1163013159
ivan8511
2006-11-08 22:12
2007.01.28
Создать программно базу данных