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

	//检测当前分辨率
	int Width = GetSystemMetrics(SM_CXSCREEN);
    int Height = GetSystemMetrics(SM_CYSCREEN);
	DEVMODE lpDevMode0;
	lpDevMode0.dmBitsPerPel=32;
	lpDevMode0.dmPelsWidth=Width;
	lpDevMode0.dmPelsHeight=Height;
	lpDevMode0.dmSize=sizeof(lpDevMode0);
	lpDevMode0.dmFields =DM_PELSWIDTH|DM_PELSHEIGHT|DM_BITSPERPEL;
	//修改
	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)
	{
		//MessageBox("修改成功!");
		ChangeDisplaySettings(&lpDevMode,CDS_UPDATEREGISTRY);
		//            //使用CDS_UPDATEREGISTRY表示次修改是持久的,
		//            //并在注册表中写入了相关的数据
		MessageBox("修改成功!还原");
		if(IDOK)
		{
			ChangeDisplaySettings(&lpDevMode0,CDS_UPDATEREGISTRY);
		}
	}
	else
	{
	    //MessageBox("修改失败,恢复原有设置!");
		ChangeDisplaySettings(NULL,0);
	}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值