我目前正在打包一个应用程序以在兼容模式下运行。我很容易找到在 HKLM(对于所有用户)或 HKCU(仅对于登录用户)中创建注册表项的位置。
问题是;我真的不知道这是否有问题,我可以在 HKLM\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers 中设置注册表项。我创建了一个 REG_SZ, key 的名称是路径。
例如:C:\Program Files (x86)\MyApplicationDirectory\MyApp.exe
这个键的值是~WIN7RTM
问题是,当我安装应用程序并使用此路径创建注册表项时。我可以单击快捷方式属性并进入兼容性选项卡,并注意到它似乎没有设置为在 Windows 7 中以兼容模式运行。
我知道我创建了正确的注册表项,因为我最初通过兼容性选项卡创建了快捷方式,然后单击了“更改所有用户的设置”,然后将其设置为在 Windows 7 中运行。如果我在快捷方式中设置了兼容模式,我可以看到它被选中。 (以黄色突出显示)
但是,如果我尝试通过注册表项设置兼容模式并进入 EXE 或快捷方式的属性,则不会选中该框。
最佳答案
别管人家了。我凝视并比较了创建的注册表项。我没有在 ~ 和 WIN7RTM 之间添加空格。一旦我添加了一个空格,它就可以正常工作。
之前:~WIN7RTM(不正确)
之后:~WIN7RTM(正确)
忽略了它。
关于Windows 10 兼容模式 |注册表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38836185/