You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何通过脚本自动完成浮动工位的多显示器配置?

如何通过脚本自动完成浮动工位的多显示器配置?

太懂这种每天换工位重复调显示器的痛苦了!400个浮动工位天天换,手动点来点去确实烦,我来给你几个靠谱的自动化方案,亲测好用:

方案一:PowerShell + 轻量命令行工具(最稳定)

DisplaySwitch.exe只能搞定扩展显示这一步,要完成剩下的主显示器设置和位置对齐,推荐搭配nircmd这个轻量本地工具(不用安装,下载后直接用,完全离线)。

步骤1:准备nircmd

你可以直接搜索下载这个小工具,解压后把nircmd.exe放到容易找到的地方(比如和脚本放在同一文件夹)。

步骤2:写批处理脚本

新建一个文本文件,把下面内容粘贴进去,然后改后缀为.bat,根据你的实际分辨率和显示器编号调整参数:

@echo off
:: 第一步:切换到扩展显示模式
DisplaySwitch.exe /extend
:: 给系统一点时间加载配置
timeout /t 2 /nobreak >nul

:: 第二步:设置外接显示器为主屏(monitor-2是外接显示器编号,需要自己确认)
nircmd.exe setdisplay monitor-2 1920 1080 32 primary

:: 第三步:调整笔记本屏幕位置到左边,底部对齐
:: 这里假设笔记本分辨率是1366x768,外接是1920x1080,Y轴偏移量=1080-768=312
nircmd.exe setdisplay monitor-1 1366 768 32 left 0 312

怎么确认显示器编号?

打开命令提示符,运行nircmd.exe enumdisplays,会列出所有显示器的编号、分辨率等信息,你就能分清哪个是笔记本屏幕(monitor-1),哪个是外接显示器(monitor-2)了。

方案二:纯PowerShell脚本(无需额外工具)

如果你不想用第三方工具,也可以用PowerShell调用Windows原生API来实现,这里分享一个更省心的技巧:

手动设置好一次完美的显示器布局,然后打开PowerShell运行这条命令导出配置:

displayconfig /export c:\display-settings.xml

之后写一个简单的脚本一键导入配置:

# 切换到扩展显示模式
& DisplaySwitch.exe /extend
Start-Sleep -Seconds 2
# 导入之前保存的完美配置
displayconfig /import c:\display-settings.xml

这个方法不用动态计算参数,完全还原你手动设置的布局,稳定性拉满!

方案三:AutoHotkey模拟操作(适合界面党)

如果你喜欢用模拟点击的方式,AutoHotkey脚本可以帮你自动操作显示设置界面,但缺点是如果系统更新导致界面布局变化,脚本可能失效:

; 打开Windows显示设置
Run, ms-settings:display
WinWait, Settings
Sleep, 1000

; 切换到扩展显示模式
Send, {Tab 3}
Send, {Down 2}
Send, {Enter}
Sleep, 1000

; 设置外接显示器为主屏
Send, {Tab 5}
Send, {Down}
Sleep, 500
Send, {Tab 2}
Send, {Space}
Sleep, 500

; 模拟拖动笔记本屏幕到左边底部对齐(需根据你的屏幕位置调整鼠标坐标)
Send, {Tab}
Sleep, 500
MouseClick, Left, 100, 500, 2 ; 按住鼠标拖动
MouseMove, -1366, 312, 100
MouseClick, Left

推荐用法

我个人最推荐方案一的批处理脚本,把它放到桌面,每天到工位双击一下,10秒内搞定所有配置,再也不用手动点显示设置了!

备注:内容来源于stack exchange,提问作者ElRudi

火山引擎 最新活动