如何自动化实现Windows设置中显示器的禁用与启用功能?
如何自动化实现Windows设置中显示器的禁用与启用功能?
我之前也碰到过类似的困扰,给你几个实用的解决方案,帮你搞定显示器的自动化禁用/启用:
一、修正Nirsoft MultiMonitorTool的使用方式
你提到用MultiMonitorTool后显示器从列表消失,大概率是不小心用了移除显示器的功能,而不是禁用功能。试试用命令行模式指定禁用/启用参数,就不会出现这个问题:
- 禁用显示器:执行
MultiMonitorTool.exe /disable "你的显示器名称" - 启用显示器:执行
MultiMonitorTool.exe /enable "你的显示器名称"
你可以先运行MultiMonitorTool.exe查看所有显示器的名称,替换掉命令里的占位符即可。
二、使用微软官方的DevCon工具
这是更可靠的系统级工具,不会让显示器从设备列表中消失,操作步骤如下:
- 从微软官方渠道获取Windows驱动开发工具包(WDK),从中提取
devcon.exe工具; - 打开设备管理器,找到目标显示器,右键选择「属性」→「详细信息」,在下拉菜单中选择「硬件ID」,复制对应的ID字符串;
- 以管理员身份打开命令提示符,执行以下命令:
- 禁用显示器:
devcon disable "复制的硬件ID" - 启用显示器:
devcon enable "复制的硬件ID"
- 禁用显示器:
这个方法本质是禁用/启用显示器设备,和你在设备管理器里操作的效果一致,完全可以写成脚本自动化执行。
三、注册表修改方案(谨慎操作)
修改注册表有一定风险,操作前请先备份注册表:
- 打开注册表编辑器(
regedit),定位到路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\DISPLAY\[你的显示器型号]\[硬件ID]\Device Parameters; - 找到名为
Enable的DWORD值,将其设置为0即可禁用显示器,设置为1则启用; - 修改完成后,可能需要重启「显示适配器」服务或者重启电脑才能生效。
注意:不同品牌的显示器和显卡,注册表路径可能略有不同,你可以通过设备管理器的硬件信息匹配对应的注册表项。
备注:内容来源于stack exchange,提问作者user9564371




