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