C# VS2005设置-香港大学

C# VS2005设置-香港大学,c#,visual-studio-2005,windows-installer,installation,C#,Visual Studio 2005,Windows Installer,Installation,我正在尝试修复使用Visual Studio 2005安装项目的现有应用程序 我们要求它在XP的有限用户帐户上工作,我们的应用程序是用C#for.NET2.0编写的 在安装过程中,它会将密钥写入HKCU,但会跳过选择“为所有人安装”而不是“仅为我安装”的UI步骤。所以它默认为为每个人安装 问题是,您在管理员帐户上安装,然后切换到受限帐户。这使得它可以进行失败的修复安装。如果我去任何其他管理帐户,它的工作只是罚款 我的问题是,有限账户试图读取/写入的HKCU密钥放在哪里 在HKEY_用户中是否有一

我正在尝试修复使用Visual Studio 2005安装项目的现有应用程序

我们要求它在XP的有限用户帐户上工作,我们的应用程序是用C#for.NET2.0编写的

在安装过程中,它会将密钥写入HKCU,但会跳过选择“为所有人安装”而不是“仅为我安装”的UI步骤。所以它默认为为每个人安装

问题是,您在管理员帐户上安装,然后切换到受限帐户。这使得它可以进行失败的修复安装。如果我去任何其他管理帐户,它的工作只是罚款

我的问题是,有限账户试图读取/写入的HKCU密钥放在哪里

在HKEY_用户中是否有一个适用于“每个人”的神奇地方?我不明白如何从一个管理员用户到另一个管理员用户。为了验证这一理论,我在有限用户上手动输入了HKCU中的密钥,但它仍然试图修复

如果我知道“Everyone”密钥在哪里,我只需通过自定义操作授予所有用户完全访问权限,这样有限的帐户就不会强制进行修复安装。

HKEY_USERS\.DEFAULT\  

您要找的分支机构?

没有“每个人”
HKCU
密钥。香港大学按用户计算。Windows Installer将始终尝试修复,除非每个人都可以访问原始MSI文件,否则它可能会失败

基本上,我一直遵循的经验法则是在安装过程中从不向
HKCU
写入数据,而是在安装过程中向
HKLM
写入数据,当应用程序第一次运行时,我会创建相关的
HKCU


请参阅我关于SO问题的答案,并作为编写相关
HKCU
配置的可行替代方案进行检查。

这是系统帐户,我认为我的设置没有在系统下运行。这里有一个链接:我们自己找到了这个解决方案。我们将从每个用户第一次运行时的文件中提取设置,并将它们放入HKCU。如果它是一个新的应用程序,我们将避免完全使用注册表,只使用vista uac安全应用程序数据文件夹中的文件。