无法在C中创建fuilscreen控制台窗口

时间:2013-12-14 10:15:44

标签: c winapi fullscreen mingw32

#define _WIN32_WINNT 0x0601
#include <windows.h>

int main() 
{
    HWND StdHandle = GetStdHandle (STD_OUTPUT_HANDLE);
    SetConsoleDisplayMode (StdHandle, CONSOLE_FULLSCREEN_MODE, 0);
    system ("pause");
}

The Community Additions written by Jim Michaels表示,如果您的应用需要Windows 7,则必须在#includes之前的文件顶部添加#define _WIN32_WINNT 0x0601

this thread表示微软删除了该功能(WDDM显示驱动程序)。

哪个是对的?

我的目标是创建一个fuilscreen控制台窗口,但最终失败了。为什么呢?

1 个答案:

答案 0 :(得分:1)

Windows 7:

#include <Windows.h>
int main()
{
    HANDLE hStdHandle = GetStdHandle (STD_OUTPUT_HANDLE);
    BOOL bWin32Ret = SetConsoleDisplayMode (hStdHandle, CONSOLE_FULLSCREEN_MODE, 0);
    if ( bWin32Ret == 0 )
    {
        DWORD dwLastError = GetLastError(); // 120
    }
}

winerror.h摘录

// This function is not supported on this system.
//
#define ERROR_CALL_NOT_IMPLEMENTED       120L

使用#define _WIN32_WINNT不会改变任何内容。