如何通过 PowerShell 查询 Windows 显示设置参数

千墨姑娘_6047

千墨姑娘_6047

2026-08-19

272人浏览

原创

powershell可通过.net screen类、注册表、cim/wmi及displayconfig模块获取windows显示设置,包括分辨率、缩放比例、主显示器、dpi、多屏布局、刷新率与旋转等参数。

可以通过 powershell 查询 windows 显示设置的关键参数,比如分辨率、缩放比例、主显示器标识、dpi 设置和多显示器布局等。核心方法是调用 windows api 或读取系统注册表、wmi/cim 类,部分信息需结合 .net 类(如 system.windows.forms.screen)获取。

使用 .NET Screen 类获取基础显示信息

这是最简单直接的方式,适用于获取每块屏幕的分辨率、工作区域、是否为主屏等运行时信息:

  • 运行 [System.Windows.Forms.Screen]::AllScreens 可列出所有已连接显示器
  • 每个屏幕对象包含 Bounds(总分辨率)、WorkingArea(扣除任务栏后的可用区域)、Primary(是否为主显示器)、DeviceName(如 \.DISPLAY1)
  • 注意:需先加载 WinForms 程序集,建议加一句 Add-Type -AssemblyName System.Windows.Forms

查询系统级 DPI 和缩放设置

Windows 的显示缩放比例(如 125%、150%)属于系统 DPI 设置,可通过注册表或 CIM 获取:

AstraFlow星图
AstraFlow星图

AstraFlow星图是一款AI开发辅助工具,开发者专属一站式AI开发平台。

下载
  • 注册表路径:HKCU:Control PanelDesktopWindowMetrics 中的 AppliedDPI 值(单位为 1/96 inch,例如 120 表示 125% 缩放)
  • 更可靠方式是使用 Get-CimInstance -ClassName Win32_DesktopMonitor,但该类不直接暴露缩放值;推荐配合 [System.Windows.Forms.SystemInformation]::PrimaryMonitorSize 和实际逻辑像素对比推算
  • 若需精确缩放百分比,可调用 Get-WinDisplaySetting(PowerShell 7.4+ 内置 cmdlet),或使用 [System.Windows.Forms.Screen]::PrimaryScreen.Bounds.Width / [System.Windows.Forms.Screen]::PrimaryScreen.Bounds.Width * 100 辅助估算(需已知基准)

读取多显示器位置与排列(物理布局)

显示器在桌面上的相对位置(左/右/上/下偏移)决定了扩展模式下的光标移动逻辑,这些信息存储在注册表中:

  • 路径:HKLM:SYSTEMCurrentControlSetControlGraphicsDriversConnectivity(动态连接状态)
  • 更稳定的是 HKCU:Control PanelDesktopMultiTaskingViewVirtualDesktops 不适用;实际布局坐标保存在 HKCU:SoftwareMicrosoftWindowsCurrentVersionExplorerScaling 和 HKCU:Control PanelDesktopPerMonitorSettings(Win10 1809+)
  • 推荐使用 WMI 类 WmiMonitorID(来自 rootwmi)配合 Get-CimInstance -Namespace rootwmi -ClassName WmiMonitorID 获取设备 ID 和序列号,再结合 EnumDisplayMonitors API 调用反查位置(需通过 C# 代码封装)

获取高级显示属性(刷新率、色深、旋转)

这些参数需调用 Windows GDI 或 DXGI 接口,PowerShell 原生命令不直接支持,但可通过以下方式间接获取:

  • 使用 Get-CimInstance -ClassName CIM_VideoController 获取显卡基本信息(如显存、驱动版本),但不含当前分辨率刷新率
  • 执行 dxdiag /t dxdiag.txt 导出诊断文件后解析(不推荐自动化)
  • 最佳实践:借助开源模块如 DisplayConfig(PowerShell 封装 Windows Display Config API),运行 Get-DisplayConfig 即可返回完整拓扑,含 TargetMode(含宽高、刷新率、旋转)、SourceMode、缩放类型等

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

417

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

860

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2552

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

856

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

769

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

394

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2316

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

4252

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

687

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.6万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.4万人学习