Windows 10 兼容模式 |注册表项

标签 windows

我目前正在打包一个应用程序以在兼容模式下运行。我很容易找到在 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 中运行。如果我在快捷方式中设置了兼容模式,我可以看到它被选中。 (以黄色突出显示)

enter image description here

但是,如果我尝试通过注册表项设置兼容模式并进入 EXE 或快捷方式的属性,则不会选中该框。

  • 如果我设置了注册表项,如何验证应用程序是否在兼容模式下运行?
  • 还有另一种方法可以设置注册表项并确保它在兼容模式下运行吗?
  • 最佳答案

    别管人家了。我凝视并比较了创建的注册表项。我没有在 ~ 和 WIN7RTM 之间添加空格。一旦我添加了一个空格,它就可以正常工作。

    之前:~WIN7RTM(不正确)

    之后:~WIN7RTM(正确)

    忽略了它。

    关于Windows 10 兼容模式 |注册表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38836185/

    相关文章:

    windows - 在 Delphi 下终止应用程序时线程未终止

    c# - 如何使我的应用程序与 Windows 资源管理器一样快地呈现文件

    windows - 为什么我的 "docker-compose run"在 Windows 上不能正常工作?

    windows - Windows 上的 Foundation.h

    windows - 将 mac 上生成的 ssh key 转换为 ppk

    windows - 提交的内存转到物理 RAM 还是在页面文件中保留空间?

    python - 如何让 Jupyter Notebook 在系统变量中使用 PYTHONPATH 而无需直接破解 sys.path?

    windows - Windows Git-bash运行docker.sock

    c++ - 有没有办法,或者说 'accepted'是什么办法让所有windows都运行在当前进程下?

    多线程程序中的java.lang.NullPointerException