Erl*_* D. 8 c# monitor sleep-mode
通过使用Windows API,可以将监视器置于睡眠模式:
[DllImport("user32.dll")]
static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
Run Code Online (Sandbox Code Playgroud)
然后
SendMessage(this.Handle, WM_SYSCOMMAND, (IntPtr)SC_MONITORPOWER, (IntPtr)2);
Run Code Online (Sandbox Code Playgroud)
运行上面的命令时,两个监视器都会进入休眠状态.是否有可能只影响多个连接的监视器中的一个?
确切地说,我不知道您是否可以让特定的显示器进入睡眠状态。但是您可以通过将显示器数量更改为一个(假设您有 2 个)来实现此目的,而您希望将其唤醒。另一个显示器将在大约一分钟后自动进入睡眠状态(大多数显示器在断开连接后大约一分钟后进入省电模式)。您实质上是以编程方式断开显示器的连接。您可以在需要时激活它。
然而,这种方法还会有其他影响,一旦你开始使用它,你就会知道。