求DELPHI代码,功能:在WIN7下,最好是WIN8和WIN10下都可以关闭和打开显示器

SendMessage(self.Handle,WM_SYSCOMMAND,SC_MONITORPOWER,1);//XP下可用,关闭显示器{XP打开显示器}SendMe... SendMessage(self.Handle,WM_SYSCOMMAND,SC_MONITORPOWER,1);//XP下可用,关闭显示器
{XP打开显示器}SendMessage(Application.Handle, WM_SYSCOMMAND, SC_MONITORPOWER,-1);

那WIN7下怎么写打开和关闭显示器?如果可以在WIN8及WIN10下好使,可以加分,欢迎高手指教!谢谢!
展开
 我来答
zhenxin0603
推荐于2016-06-24 · TA获得超过600个赞
知道小有建树答主
回答量:600
采纳率:100%
帮助的人:466万
展开全部

你把第一个参数 改为 HWND_BROADCAST Win 8.1 测试成功

        private static readonly IntPtr HWND_BROADCAST = new IntPtr(0xffff); //广播消息,所有顶级窗体都会接收

 最后一个参数为2

追问
SendMessage(HWND_BROADCAST,WM_SYSCOMMAND,SC_MONITORPOWER,2);
这样在WIN7成功关屏
但是这句没看懂:private static readonly IntPtr HWND_BROADCAST = new IntPtr(0xffff);
怎么代码中间那么多空格 ?能写个精确的代码吗?可以再加30分,谢谢!
追答

用PostMessage吧,代码如下

PostMessage(HWND_BROADCAST,WM_SYSCOMMAND,SC_MONITORPOWER,2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式