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

Вниз

Как програмно узнать сколько занимает памяти чужое приложение?   Найти похожие ветки 

 
kirya85   (2002-01-16 09:06) [0]

Как програмно узнать сколько занимает памяти чужое приложение?
Желательно физичиской и виртуальной памяти отдельно.


 
andrucco   (2002-01-16 10:47) [1]

Вот кусок кода:
..
hWn := FindWindow(nil, SomeSTR);
PrintMemoryInfo(H);
..

procedure PrintMemoryInfo(ProcessID:DWORD);
var
hProcess : THANDLE;
pmc: PROCESS_MEMORY_COUNTERS;

begin
// Получаем дескриптор процесса для получения информации о нем
hProcess := OpenProcess(PROCESS_QUERY_INFORMATION or PROCESS_VM_READ, FALSE, processID );
// Функция возвращает информацию о памяти, занимаемой процессом
if GetProcessMemoryInfo( hProcess, @pmc, sizeof(pmc))
then begin
AssignFile(F, "c:\Spy1.txt");

{$I-}
Append(F);
{$I+}
IF IOResult <> 0 then Rewrite(F);
Writeln(F, DateTimetoStr(Now));
Writeln(F, "---------------------------------------------");
Writeln(F, "Err: "+ FloatToStr(pmc.PageFaultCount));
Writeln(F, "Max.Mem.(Kb): "+ FloatToStr(pmc.PeakWorkingSetSize/1024));
Writeln(F, "LPul max: "+ FloatToStr(pmc.QuotaPeakPagedPoolUsage));
Writeln(F, "LPul: "+ FloatToStr(pmc.QuotaPagedPoolUsage));
Writeln(F, "NLPul max: "+ FloatToStr(pmc.QuotaPeakNonPagedPoolUsage) );
Writeln(F, "NLPul: "+ FloatToStr(pmc.QuotaNonPagedPoolUsage) );
Writeln(F, "Vmem.(Kb): "+ FloatToStr(pmc.PagefileUsage/1024));
Writeln(F, "Max Vmem (Kb): "+ FloatToStr(pmc.PeakPagefileUsage/1024));
Writeln(F, "Mem(Kb): " + FloatToStr(pmc.WorkingSetSize/1024));
Writeln(F, "---------------------------------------------");
Close(F);
end;
// Закрываем дескриптор
CloseHandle( hProcess );
end;


 
kirya85   (2002-01-16 20:41) [2]

GetProcessMemoryInfo( hProcess, @pmc, sizeof(pmc)) всегда возвращает False, у меня токое подозрение, что это NT-функция.


 
cdaDmitriy   (2002-01-27 10:44) [3]

>> andrucco © ВЫ ВОБЩЕ ПРОВЕРЯЛИ КОД ИЛИ НЕТ



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

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

Наверх





Память: 0.45 MB
Время: 0.007 c
1-90974
gek
2002-03-15 08:24
2002.03.28
Как лучше организовать...


1-90949
Kettle of delphi
2002-03-14 03:24
2002.03.28
Про точные интервалы времени.....................


1-90910
ded_di
2002-03-18 13:22
2002.03.28
BDE


1-91004
fag2000@ok.ru
2002-03-15 17:43
2002.03.28
Как глобально выделить память?


4-91114
Delphi 5.01
2002-01-27 07:38
2002.03.28
Как вывести сообшения выбора папки только в котором видны и рабочий стол и все остальное в пиктогарамах ну такое сообшение кода драивер меняеш и предлагается выбрать папкуб ну вот точно такое окно нужно!





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский