我有一台运行Windows 7的笔记本电脑,但可能最终会转到Windows 10。我希望有自己的实用程序来检测笔记本电脑何时停靠或断开,然后更改电源配置文件设置。在标准的Windows电源配置文件中,我已经设置了它来做我想做的事情,当它是由电池供电的时候,但是当笔记本电脑在对接站时,我想要一个不同的电源计划,而不是插入到交流电适配器,而不是在对接站。
到目前为止,我有一个工作程序,从系统托盘中的一个小图标开始,当它被停靠时它会做我想要的更改,但是我确定笔记本电脑被对接的是通过查找我连接到我的对接站的特定硬编码监视器名称来实现的。(“三星U32D970Q")当WM_DEVICECHANGE发生时,通过EnumDisplayDevices调用。
主要的问题是,如果我改变显示器,那么程序将停止工作。我可以在启动时向程序传递一个参数,其中包含要查找的监视器的名称,但我正在试图找出是否有更好的方法。我这么做是不是太傻了?
是否有一些Windows 7+功能,操作系统可以判断笔记本电脑是否在停靠站?
发布于 2018-01-18 20:25:42
我也面临着类似的问题,试图确定我的笔记本电脑是否停靠了。我的最终目标是将笔记本电脑电源从对接站连接到智能插头上,并使用Google助手使用语音命令打开/关闭笔记本电脑。当交流电恢复时,要打开笔记本电脑,需要在BIOS中启用“唤醒AC”。问题是,当交流电被切断时,笔记本电脑仍将在电池上运行。当满足这些条件时,我需要一种后台任务来正确关闭Windows:
1)笔记本电脑的电源已由交流电改为直流电
2)笔记本电脑被停靠到停靠站。
上述条件确保笔记本电脑不会关闭时,我刚刚打开。我发现当笔记本电脑停靠时,设备管理器中就会有额外的设备。我的解决方案是枚举所有设备,然后将结果保存到两个文本文件中,并使用windiff比较它们之间的差异。只需使用一两个“额外设备”的差异来确定笔记本电脑是否停靠。
对于我的戴尔laptop+docking站设置,“隐藏-抱怨*”设备总是存在时,停靠和失踪时,退出。我尝试过使用CM_Is_Dock_Station_Present和GetCurrentHwProfile,但两者都没有正确报告停靠状态。
https://stackoverflow.com/questions/39861216
复制相似问题