答案1
您可以将其复制wmplayer.exe
到同一个 Windows Media Player 目录中。副本将有一个“兼容性”选项卡,但其他功能相同。(您也可以使用十六进制编辑器破解 EXE 清单以更改其 DPI 感知声明,但制作副本要容易得多!)
不幸的是,GDI(增强系统)缩放给这个应用程序带来了很大的混乱:
但系统扩展很好,只是模糊:
但是,如果您需要修改原始可执行文件的 DPI 感知(例如由于文件关联问题),我们必须打破十六进制编辑器-我喜欢十六32。首先,将文件的所有权和完全访问权限分配wmplayer.exe
给管理员组。制作一份备份,以防您犯错或想要恢复更改。
以管理员身份运行 XVI32 并打开wmplayer.exe
。按 Ctrl+F 打开“查找”对话框。搜索文本字符串,<dpiAwareness
取消选中“作为 Unicode Latin”框。单击右侧窗格中的左尖括号,确保窗格处于活动状态(白色背景)。点击空格键,直到用<dpiAwareness>PerMonitorV2</dpiAwareness>
空格覆盖整个标签。(不要按 Delete 或 Backspace!)这将删除 DPI 感知声明并使 Windows 应用系统缩放。使用 Ctrl+S 保存更改。
为了完整性:可以通过添加标签来应用 GDI 缩放gdiScaling
。(这同样会给 Windows Media Player 带来丑陋的结果,但可能对其他程序有用。)向上滚动一点点,xmlns
用“201”覆盖前一个标签属性中的“2016”7",然后在其右尖括号后立即用 覆盖空格<gdiScaling>true</gdiScaling>
。完成后,它将看起来像这样(新标签以红色突出显示,属性更改以蓝色选定):
答案2
使用 Windows Media Player 12,您可以通过编辑注册表 AppCompatFlags 使其具有 DPI 感知功能:
- 按 Windows + R 输入
regedit
,输入并转到:
Computer\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
右键单击所调用的键
Layers
并创建一个新的字符串值。命名字符串
C:\Program Files (x86)\Windows Media Player\wmplayer.exe
右键单击新创建的字符串并选择
Modify..
,然后插入单词HIGHDPIAWARE
并选择Ok
。重新启动 Windows Media Player 以使更改生效
此修复程序也可以使mmc.exe
所有启用 Microsoft 管理控制台的应用程序都能够感知 DPI。