gpt4 book ai didi

windows - 有什么方法可以检测 Windows 中的监视器状态(打开或关闭)?

转载 作者:可可西里 更新时间:2023-11-01 12:16:43 24 4
gpt4 key购买 nike

有谁知道在 Windows (XP/Vista/2000/2003) 中是否有获取当前监视器状态(打开或关闭)的 API?

我的所有搜索似乎都表明没有真正的方法可以做到这一点。

This thread尝试使用 GetDevicePowerState根据 Microsoft 的文档,这不适用于显示设备。

在 Vista 中我可以收听 GUID_MONITOR_POWER_ON但是当手动关闭监视器时,我似乎没有收到任何事件。

在 XP 中,我可以连接到 WM_SYSCOMMAND SC_MONITORPOWER,寻找状态 2。这只适用于系统触发电源关闭的情况。

WMI Win32_DesktopMonitor 类似乎也无济于事。

编辑:这里是a discussion在 comp.os.ms-windows.programmer.win32 上表明没有可靠的方法可以做到这一点。

还有其他人有什么想法吗?

最佳答案

GetDevicePowerState 有时 适用于监视器。如果存在,您可以打开 \\.\LCD 设备。完成后立即关闭它。

从本质上讲,你运气不好——没有可靠的方法来检测显示器电源状态,除非编写设备驱动程序并过滤显示驱动程序链上下的所有电源 IRP。而且这也不是很可靠。

关于windows - 有什么方法可以检测 Windows 中的监视器状态(打开或关闭)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/203355/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com