如何通过命令行查询Windows RDP的显示器位置并实现多显示器自动配置
如何通过命令行查询Windows RDP的显示器位置并实现多显示器自动配置
我完全懂你这种麻烦——每次外接显示器的HDMI线插得顺序不一样,Windows给的逻辑编号就乱了,导致RDP的多屏显示顺序搞反,还要手动打开mstsc.exe /l的图形界面看编号,再去改rdp文件,实在太折腾了。下面我给你一套纯命令行/脚本的解决方案,彻底搞定这个问题:
第一步:用PowerShell获取显示器的物理位置与对应RDP编号
Windows的WMI/CIM接口可以直接读取显示器的物理位置信息,我们可以用PowerShell把这些信息转换成RDP(mstsc.exe)使用的编号,而且自动按物理从左到右排序:
# 获取所有显示器的RDP编号、水平偏移(越小越靠左)、设备名称 Get-CimInstance Win32_DesktopMonitor | ForEach-Object { # 提取Win32_DesktopMonitor的索引,转换为RDP使用的1-based编号 $monitorIndex = [int]$_.DeviceID -replace 'MonitorId=','' [PSCustomObject]@{ RDP编号 = $monitorIndex + 1 水平偏移位置 = $_.ScreenLeft 显示器名称 = $_.Name } } | Sort-Object 水平偏移位置
运行这个脚本后,你会看到按物理从左到右排列的显示器列表,对应的RDP编号就是你需要写在rdp文件selectedmonitors参数里的数字。
第二步:自动修改RDP配置文件
我们可以把上面的逻辑扩展成一个自动脚本,直接修改你的rdp文件,不用手动编辑:
# -------------------------- # 配置参数:修改成你的RDP文件路径和需要选中的显示器数量 $rdp文件路径 = "C:\Users\你的用户名\Documents\我的远程连接.rdp" $需要选中的显示器数量 = 2 # 比如你要选物理左数前2个显示器 # -------------------------- # 获取物理从左到右排序的RDP编号 $sortedMonitors = Get-CimInstance Win32_DesktopMonitor | ForEach-Object { $monitorIndex = [int]$_.DeviceID -replace 'MonitorId=','' [PSCustomObject]@{ RDP编号 = $monitorIndex + 1 水平偏移位置 = $_.ScreenLeft } } | Sort-Object 水平偏移位置 | Select-Object -ExpandProperty RDP编号 # 提取需要的显示器编号(比如取前N个) $selectedMonitors = $sortedMonitors[0..($需要选中的显示器数量-1)] -join ',' # 读取并修改RDP文件内容 $rdp内容 = Get-Content $rdp文件路径 -Raw if ($rdp内容 -match 'selectedmonitors:s:\d+(,\d+)*') { # 替换已存在的selectedmonitors行 $rdp内容 = $rdp内容 -replace 'selectedmonitors:s:\d+(,\d+)*', "selectedmonitors:s:$selectedMonitors" } else { # 如果没有这一行,就添加到文件末尾 $rdp内容 += "`nselectedmonitors:s:$selectedMonitors" } # 保存修改后的RDP文件 $rdp内容 | Set-Content $rdp文件路径 -Encoding UTF8 Write-Host "✅ 已自动更新RDP文件的selectedmonitors参数为:$selectedMonitors"
实用调整技巧
- 如果想排除笔记本自带屏幕,可以在
Get-CimInstance后面加个过滤条件:Where-Object { $_.ScreenLeft -ne 0 }(一般笔记本屏幕的水平偏移是0,外接显示器会有正负偏移) - 如果需要选中特定位置的显示器(比如物理左数第2和第3个),可以把
$sortedMonitors[0..($需要选中的显示器数量-1)]改成$sortedMonitors[1,2](注意索引从0开始) - 可以把这个脚本保存成
.ps1文件,右键选择“用PowerShell运行”,或者做成桌面快捷方式,双击就自动更新配置。
备注:内容来源于stack exchange,提问作者Aaron Caba
相关产品推荐
相关产品推荐

