您的位置:首页 > 理论基础

VC获取并修改计算机屏幕分辨率

2015-09-07 08:34 357 查看
//获取分辨率

int m_nWindwMetricsX = ::GetSystemMetrics(SM_CXSCREEN);
int m_nWindwMetricsY = ::GetSystemMetrics(SM_CYSCREEN);

//修改分辨率

DEVMODE lpDevMode;
lpDevMode.dmBitsPerPel=32;
lpDevMode.dmPelsWidth=1024;
lpDevMode.dmPelsHeight=768;
lpDevMode.dmSize=sizeof(lpDevMode);
lpDevMode.dmFields =DM_PELSWIDTH|DM_PELSHEIGHT|DM_BITSPERPEL;
LONG result;
result=ChangeDisplaySettings(&lpDevMode,0);
if (result==DISP_CHANGE_SUCCESSFUL)
{
AfxMessageBox(L"修改成功!");
ChangeDisplaySettings(&lpDevMode,CDS_UPDATEREGISTRY);
//   //使用CDS_UPDATEREGISTRY表示次修改是持久的,
//   //并在注册表中写入了相关的数据
}
else
{
AfxMessageBox(L"修改失败,恢复原有设置!");
ChangeDisplaySettings(NULL,0);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: