Мне нужно получить актуальное использование памяти программы, которая работает. я разобрал его и нашел GetProcessMemoryInfo, это похоже на то, что мне нужно, но я не могу заставить его работать. Он не возьмет ручку, которую я нахожу для окна, и я не совсем уверен, чего они хотят.Нужна помощь в получении текущей памяти в программе
#include <iostream>
#include <Windows.h>
#include <tchar.h>
#include <Psapi.h>
using namespace std;
int main()
{
HANDLE hwnd = FindWindow(NULL,TEXT("Calculator"));
PPROCESS_MEMORY_COUNTERS ppsmemCounters;
DWORD cb;
BOOL WINAPI GetProcessMemoryInfo(hwnd, ppsmemCounters, cb);
return 0;
}
Я просто пытаюсь найти калькулятор окна на данный момент. Одна из ошибок, которые я получаю: Ошибка: значение типа «РУЧКА» не может использоваться для инициализации типа объекта «BOOL». Другой «ошибка C2078: слишком много инициализаторов». Я использую VC++ 2010, и моя ОС Windows, 7.
Другой вопрос, чтобы быть в курсе - не объявить объект типа 'PPROCESS_MEMORY_COUNTERS'. Вместо этого создайте объект типа 'PROCESS_MEMORY_COUNTERS', затем передайте указатель на него в' GetProcessMemoryInfo' после заполнения соответствующих полей. В противном случае функция не даст вам никакой осмысленной информации о процессе. – templatetypedef
Я попробовал GetWindowThreadProcesId и ошибку: значение типа «HANDLE» не может использоваться для инициализации типа объекта «DWORD». Не могли бы вы показать мне, что вы имеете в виду, это немного запутанно. – bob
Tyvm для кода, но я получаю сообщение об ошибке: main.obj: ошибка LNK2019: нерешенный внешний символ _GetProcessMemoryInfo @ 12, указанный в функции _main, также я знаю, что это может звучать dum, но где я могу поместить имя окна? – bob