Я хотел бы разработать программу, которая идентифицирует карту как ее игра в другой запущенной программе, такой как игра в покер или червы или что-то еще.Я начинаю с того, что пытаюсь получить необходимую информацию об этой игровой программе, которая уже запущена, и у меня возникают проблемы с самого начала.Я использую MSVC ++ 2013 и разрабатываю приложение MFC.Прямо сейчас я играю с игрой Hearts, и вот код:
HWND hwnd = FindWindowA(NULL, "Hearts");
if (hwnd == NULL)
{ /* window not found*/
}
else
{ /* window was found */
RECT rect;
GetWindowRect(hwnd, &rect);
int width = rect.right - rect.left;
int height = rect.bottom - rect.top;
}
Итак, я получаю hwnd очень хорошо, и код работает в зависимости от того, открыт я или нет Hearts.Но строка GetWindowRect(hwnd, &rect);
не будет компилироваться, говоря
«ошибка C2660:« CWnd :: GetWindowRect ': функция не принимает 2 аргумента ».
Существует функция GetWindowRect
, которая имеет только аргумент rect, но получает свойства окна программы, над которым я работаю.На GetWindowRect
есть много документации, которая показывает два аргумента, как указано выше, но как мне вызвать эту подпрограмму?