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

Вниз

GetProcessMemoryInfo   Найти похожие ветки 

 
maxistent ©   (2006-09-16 02:39) [0]

Как это корректно использовать:
(модуль PSApi)
function GetProcessMemoryInfo(Process: THandle; ppsmemCounters: PPROCESS_MEMORY_COUNTERS; cb: DWORD): BOOL;


 
Zeqfreed ©   (2006-09-16 03:05) [1]

А в чем проблема? На MSDN дан пример даже, да и сама функция не сложная.

procedure ShowProcessMemUsage(ProcessId : Cardinal);
type
 TProcessMemoryCountersEx = packed record
  cb: DWORD;
  PageFaultCount: DWORD;
  PeakWorkingSetSize: DWORD;
  WorkingSetSize: DWORD;
  QuotaPeakPagedPoolUsage: DWORD;
  QuotaPagedPoolUsage: DWORD;
  QuotaPeakNonPagedPoolUsage: DWORD;
  QuotaNonPagedPoolUsage: DWORD;
  PagefileUsage: DWORD;
  PeakPagefileUsage: DWORD;
  PrivateUsage: DWORD;  
 end;
var
 hProcess : Cardinal;
 MemCounters : TProcessMemoryCountersEx;
begin
 hProcess := OpenProcess(PROCESS_QUERY_INFORMATION or PROCESS_VM_READ, False, ProcessId);
 if (hProcess <> 0) and GetProcessMemoryInfo(hProcess, @MemCounters, SizeOf(TProcessMemoryCountersEx)) then begin
  with MemCounters do begin
   ShowMessageFmt("PageFaultCount: %u"#13#10 +
                  "PeakWorkingSetSize: %u"#13#10 +
                  "WorkingSetSize: %u"#13#10 +
                  "QuotaPeakPagedPoolUsage: %u"#13#10 +
                  "QuotaPagedPoolUsage: %u"#13#10 +
                  "QuotaPeakNonPagedPoolUsage: %u"#13#10 +
                  "QuotaNonPagedPoolUsage: %u"#13#10 +
                  "PagefileUsage: %u"#13#10 +
                  "PeakPagefileUsage: %u"#13#10 +
                  "PrivateUsage: %u"#13#10,
                  [PageFaultCount, PeakWorkingSetSize,
                   WorkingSetSize, QuotaPeakPagedPoolUsage,
                  QuotaPagedPoolUsage, QuotaPeakNonPagedPoolUsage,
                  QuotaNonPagedPoolUsage, PagefileUsage,
                  PeakPagefileUsage, PrivateUsage]);
  end;

  CloseHandle(hProcess);
 end;
end;


 
maxistent ©   (2006-09-16 21:34) [2]

Теперь не в чем :-) А как получить кол-во дескрипторов (HandleCount) и кол-во потоков (ThreadCount) для опред. процесса по его id ? Ну или может общее их кол-во в системе на тек. момент?


 
Ketmar ©   (2006-09-16 21:54) [3]

> [2] maxistent ©   (16.09.06 21:34)
WMI.


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

Я не могу использовать WMI. Есть другие предложения?


 
Ketmar ©   (2006-09-17 11:56) [5]

> [4] maxistent ©   (17.09.06 11:02)
есть. забить.



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

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

Наверх




Память: 0.47 MB
Время: 0.042 c
1-1158658703
Elen
2006-09-19 13:38
2006.10.29
Проблемы с установкой компонента


15-1160565083
Маска
2006-10-11 15:11
2006.10.29
Про XML


3-1157004484
TohaNik
2006-08-31 10:08
2006.10.29
Русский шрифт в поле таблицы.


2-1160472952
horse
2006-10-10 13:35
2006.10.29
Как изменить языковую раскладку клавиатуры?


15-1160330633
vidiv
2006-10-08 22:03
2006.10.29
как в MS OutLook повторно отправить письмо?