Windows 中兼容性设置的注册表值中波浪号和抑扬符的含义

Windows 中兼容性设置的注册表值中波浪号和抑扬符的含义

我想使用 Windows 中的注册表手动更改某些程序的兼容性设置。(对于某些程序(如 Microsoft Office),可执行文件的属性窗口中不存在“兼容性”选项卡。)

兼容性设置存储在和REG_SZ下的以可执行文件路径作为键名称的类型的注册表项中。Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\LayersComputer\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers

然而,在某些情况下,虽然处理相同的兼容性设置,但字符串的值略有不同:

示例 1截屏

键 =C:\Program Files\7-Zip\7zFM.exe
值 =^ HIGHDPIAWARE

这是通过以下方式得到的字符串:解决兼容性>程序打开但无法正确显示>选择大尺寸字体设置时程序无法正确显示

示例 2截屏

键 =C:\Program Files\7-Zip\7zFM.exe
值 =~^ HIGHDPIAWARE

这是您完成示例一并打开文件属性后的结果 >兼容性>更改高 DPI 设置覆盖高 DPI 缩放行为。缩放由以下方式执行:已被选定并设置为应用。 按好的申请

示例 3截屏

键 =C:\Program Files\7-Zip\7zFM.exe
值 =~ HIGHDPIAWARE

这是打开文件属性时的结果 >兼容性>更改高 DPI 设置覆盖高 DPI 缩放行为。缩放由以下方式执行:不是尚未选择。勾选复选框并选择应用, 按好的申请

这三个版本似乎都有效,并且效果相同。此外,我还可以简单地省略开头的特殊字符,设置看起来仍然有效。

我想了解为什么注册表项的值不同,但它们似乎具有相同的效果?字符串开头的波浪符号或脱字符的用途或含义是什么?它是否有任何隐藏的效果,乍一看并不明显?

相关内容