Я пытаюсь использовать API Windows, и у меня возникло множество проблем. Самое последнее: я включил Windows.h и временно Winuser.h, но MonitorFromWindow (и связанные с ним поля, такие как MONITOR_DEFAULTTONEAREST) отсутствуют. В частности,Почему MonitorFromWindow отсутствует/не объявлен? (C++/WINAPI)
...'MONITOR_DEFAULTTONEAREST' was not declared in this scope
и
...'MonitorFromWindow' was not declared in this scope.
Другие методы показывают, просто отлично, как LoadImage и CreateWindow. Есть ли какое-то включение, которое мне не хватает? Я не думаю, что это способ, которым я назвал методы, или даже способ включения заголовочных файлов, но если вы спросите, я все равно могу опубликовать свой код. Там не так много.
Редактировать: когда я проверяю, что определено в области видимости, ближайшими методами являются ModifyWorldTransform (...) и MonikerCommonPrefixWith (...); ближайшие поля начинаются с MONITOR_INFO, за исключением MONITOR_ENUMPROC. Нет MONITOR_DEFAULTTONEAREST/NULL/etc.
Edit 2:
#define UNICODE
#define _WIN32_WINNT 0x0500
#include <iostream>
#include <process.h>
#include <windows.h>
#include <winuser.h>
...
HMONITOR monitor = NULL;
HWND CreateFullScreenWindow(HWND hwnd){
if(monitor==NULL){
monitor = MonitorFromWindow(hwnd, MONITOR_DEFAULTTONEAREST);
}
return hwnd;
}
Какой компилятор/версия вы используете? Можете ли вы привести короткий полный пример? –
Доступен с Windows 2000, вы должны установить _WIN32_WINNT как минимум на 0x500. –
Я думал, что знаю точно, но я использую Eclipse и перечисляет несколько компиляторов в разных местах. Итак, MinGW или GCC C++. –