利用windows API更改显示器的分辨率和更改双屏的显示模式

//更改显示屏的分辨率(windows8)
DEVMODE dmScreenSettings;
memset(&dmScreenSettings,0,sizeof(dmScreenSettings));  
dmScreenSettings.dmSize = sizeof(dmScreenSettings); 
EnumDisplaySettings(NULL, ENUM_CURRENT_SETTINGS, &dmScreenSettings); 
dmScreenSettings.dmPelsWidth = 1024; 
dmScreenSettings.dmPelsHeight = 768; 
ChangeDisplaySettings(&dmScreenSettings,CDS_FULLSCREEN);
system("pause");


//上述方法在windows7上不太适用,针对以上做以下更改

//设置屏幕的分辨率
DEVMODE dmScreenSettings;
memset(&dmScreenSettings,0,sizeof(dmScreenSettings));  
dmScreenSettings.dmSize = sizeof(dmScreenSettings); 
dmScreenSettings.dmBitsPerPel = 32;
dmScreenSettings.dmFields = DM_PELSWIDTH|DM_PELSHEIGHT|DM_BITSPERPEL;
dmScreenSettings.dmPelsWidth = 1440; 
dmScreenSettings.dmPelsHeight = 900;  
long result = ChangeDisplaySettings(&dmScreenSettings,0);
if (result == DISP_CHANGE_SUCCESSFUL)
{
MessageBox(NULL,TEXT("分辨率修改成功!"),TEXT("提示"),MB_ICONEXCLAMATION|MB_OK);
ChangeDisplaySettings(&dmScreenSettings,CDS_UPDATEREGISTRY);
}
else
{
MessageBox(NULL,TEXT("分辨率修改失败"),TEXT("提示"),MB_ICONEXCLAMATION|MB_OK);
ChangeDisplaySettings(NULL,0);
}


//更改屏幕多屏幕的显示模式 
system ("DisplaySwitch.exe /clone");  //屏幕复制
system ("DisplaySwitch.exe /extend"); //屏幕扩展
system ("DisplaySwitch.exe /internal");//仅电脑屏幕
system ("DisplaySwitch.exe /external"); //仅第二屏幕




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值