我们已经使用WiX创建了一个安装程序。 在注册表中,我们将它保存在HKCU下(请参阅示例)。 桌面图标和一切为当前用户安装。带有WiX的安装程序(由Admin预先安装并由用户更新)?
<DirectoryRef Id="INSTALLDIR">
<Component Id="CMP_SaveInstallDir" Guid="52e5e617-2c9a-4514-a6b0-055e4adc6a0b">
<RegistryValue Id="MyInstallDirId" KeyPath="yes" Action="write" Root="HKCU" Key="Software\ABC\MyProduct" Name="MyProduct" Value="[INSTALLDIR]" Type="string" />
</Component>
</DirectoryRef>
对于升级,我们也使用WiX。我们尝试找到注册表项,如果可用,我们安装升级。 如果安装完整安装程序的人安装升级安装程序,那么运行良好。
现在还应该使用安装程序在某些计算机上预安装软件。这意味着,管理员用户(“Joe Admin”)安装软件。 稍后,普通用户(“Pete用户”,有权安装软件)应能够安装升级。
但是由于完全安装是由“Joe Admin”完成的,因此无法使用升级安装程序升级“Pete用户”,因为在其注册表(“Pete用户”的HKCU)中找不到注册表项。
我认为这种情况并不罕见,所以我希望有人能帮助我找到解决方案。
在此先感谢!