我有一个桌面 .net WinForms 应用程序,可以为每个人或当前用户安装。 安装程序还会将应用程序注册为 HKCR 中的 URI 方案。 这对所有用户都按预期工作,但对于登录用户来说,它会因注册表权限而失败。
我可以完成这项工作并为给定用户注册该应用程序,但是当同一台计算机上的 2 个人安装它时,就会出现问题。
以前有人遇到过这个问题吗?有没有优雅的方法来解决它? 最简单的方法是为每个人安装应用程序,但我们必须提供仅为登录用户安装的选项。
我已经搜索并正在努力寻找是否可以为每个用户提供一个条目的任何信息。 一种解决方案是创建一个为每个人安装的启动器应用程序,然后调用该应用程序来检查登录用户或所有人是否存在该启动器应用程序。
HKCR
(HKEY_CLASSES_ROOT) 是一个特殊的根,它将每台机器 HKEY_LOCAL_MACHINE\Software\Classes
和每用户 HKEY_CURRENT_USER\Software\Classes
合并到单个视图中。阅读工作无缝进行。但是,如果您想控制是否“写入”每台计算机或每用户密钥,请使用“真实”注册表路径。