功能设置控制台的显示模式
位置SetConsoleDisplayMode是系统函数,在kernel32.dll中,使用VC6.0中的工具Depends可以查看到这个函数。
函数位置原型BOOL SetConsoleDisplayMode( HANDLE hOut, DWORD dwNewMode, LPDWORD lpdwOldMode);
参数的含义:
hOut:标准输出的句柄;
dwNewMode:要设置的显示模式;
lpdwOldMode:一个存储原来的显示模式的变量地址。
标准输出的句柄的获得可以参考
GetStdHandle
程序举例程序目的:函数运行全屏显示控制台
#include
#include
typedef BOOL (WINAPI *PROCSETCONSOLEDISPLAYMODE)(HANDLE,DWORD,LPDWORD);
PROCSETCONSOLEDISPLAYMODE SetConsoleDisplayMode;
int main()
{
DWORD dwNewMode=1;
DWORD dwOldMode=0;
HMODULE hKernel32 = GetModuleHandle("kernel32");//获取模块的句柄
HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);//获取控制台的句柄(标准输出的句柄 )
if (!hKernel32)
return 0;
SetConsoleDisplayMode = (PROCSETCONSOLEDISPLAYMODE)//从kernel32动态链接库中取到GetConsoleDisplayMode这个函数
GetProcAddress(hKernel32,"SetConsoleDisplayMode");
if (!SetConsoleDisplayMode)
return 0;
SetConsoleDisplayMode(hOut,dwNewMode,&dwOldMode);//设置控制台显示方式,dwNewMode为1表示最大化,原来的显示方式放到dwOldMode
printf("Full Screen!
");
return 0;
}