跳转到主要内容
为了帮助 Windows 10 应用程序和 shell 元素在不同像素密度的显示器上以一致的大小显示,Windows 内置了缩放设置。为了使你的游戏在调整这些缩放设置后能够正确渲染和处理鼠标输入,请设置默认 DPI 感知。如果不这样做,可能会导致游戏显示不正确,使高 DPI 显示器的玩家无法使用。

启用高 DPI 感知

确保游戏支持高 DPI 显示器

  1. 检查游戏可执行文件的程序集清单 XML。这可能是 titleName.exe、titleName.exe 旁边的清单文件,或游戏可执行文件中的嵌入式清单。可以使用 sigcheck 通过命令行从游戏可执行文件中提取嵌入式清单(如下所示)。
  2. 如果在清单 XML 中只看到以下 <dpiAware> 标记,则表示不支持高 DPI 显示器。
  3. 嵌入式清单优先于松散清单。如果存在嵌入式清单,请转到步骤 4。如果没有嵌入式清单,请创建一个包含以下内容的 titleName.exe.manifest 文件。
  4. 如果存在嵌入式清单,请通过命令行使用 Windows SDK 中的以下 Mt.exe 工具找到它。
  5. 编辑嵌入式清单,添加新的 <dpiAwareness> 标记(如下所示)。
  6. 通过命令行使用 Windows SDK 中的以下 Mt.exe 工具更新嵌入式清单。
现在,你的游戏已支持高 DPI 显示器。

验证高 DPI 感知

确认游戏支持高 DPI 显示器

  1. 使用带有高 DPI 显示器的 PC(例如 Surface Studio 2),转到 Settings > Display,并将缩放设置为 150 percent。
  2. 启动游戏。
  3. 检查出现光标的屏幕,并确认游戏按预期显示。例如,全屏游戏应占满整个屏幕。
  4. 在屏幕上移动光标,确保光标可以到达游戏窗口的整个表面区域。
  5. 将鼠标悬停在交互式 UI 元素(如按钮)上,并确认视觉状态和交互按预期工作。例如,当光标直接位于按钮上方(而不是旁边)时,按钮应更改视觉状态。

说明

  • 有时会建议禁用注册表虚拟化来解决高 DPI 感知问题,但我们不建议这样做。
  • Visual Studio 在 Configuration Properties 中提供了 DPI Awareness 选项,但它使用的是较旧的 <dpiAware> 标记,该标记不适用于 MSIXVC 打包的游戏。

另请参阅

设置进程的默认 DPI 感知
最后修改于 2026年10月20日