是否有Windows API可以检测笔记本电脑盖子是否关闭(= 集成笔记本屏幕关闭)?
已经有类似的问题:
获取当前笔记本电脑盖子状态 尽管自答案依赖于在盖子关闭时删除集成屏幕"设备",但并非所有笔记本电脑都会这样做。某些笔记本即使在盖子关闭时也会将屏幕"保留"给系统(实际上不显示任何内容)。这意味着当"多个显示器"设置为"扩展这些显示器"时,Windows桌面仍然延伸到关闭的屏幕上。
我还没有确定这种行为是否可以配置或者它是否是特定于驱动程序的:
从Windows桌面中删除关闭的笔记本电脑屏幕 但即使在这样的系统上,操作系统也知道盖子关闭了,因为它可以在盖子关闭时关闭/休眠机器。并且它会广播一个通知(
检测笔记本电脑盖子关闭和打开 背景:我有一个应用程序,它在上次关闭时启动在相同的显示器上。如果它是在集成笔记本屏幕上关闭的,并且下一次应用程序启动时盖子关闭了(因为用户现在使用外部监视器),我的应用程序将在现在看不见的集成笔记本屏幕上启动。
因此,我想检测盖子是否关闭并将应用程序强制转到外部监视器。因此我要么寻找一种方法来检测盖子是否关闭,要么寻找一种方法来检测特定屏幕是否关闭(这将是更清洁的解决方案)。
已经有类似的问题:
获取当前笔记本电脑盖子状态 尽管自答案依赖于在盖子关闭时删除集成屏幕"设备",但并非所有笔记本电脑都会这样做。某些笔记本即使在盖子关闭时也会将屏幕"保留"给系统(实际上不显示任何内容)。这意味着当"多个显示器"设置为"扩展这些显示器"时,Windows桌面仍然延伸到关闭的屏幕上。
我还没有确定这种行为是否可以配置或者它是否是特定于驱动程序的:
从Windows桌面中删除关闭的笔记本电脑屏幕 但即使在这样的系统上,操作系统也知道盖子关闭了,因为它可以在盖子关闭时关闭/休眠机器。并且它会广播一个通知(
WM_POWERBROADCAST
):检测笔记本电脑盖子关闭和打开 背景:我有一个应用程序,它在上次关闭时启动在相同的显示器上。如果它是在集成笔记本屏幕上关闭的,并且下一次应用程序启动时盖子关闭了(因为用户现在使用外部监视器),我的应用程序将在现在看不见的集成笔记本屏幕上启动。
因此,我想检测盖子是否关闭并将应用程序强制转到外部监视器。因此我要么寻找一种方法来检测盖子是否关闭,要么寻找一种方法来检测特定屏幕是否关闭(这将是更清洁的解决方案)。
select * from Win32_DesktopMonitor
查询甚至没有显示集成屏幕。 - Martin Prikryl