为用户和管理员制作安装程序
本文关键字:安装 程序 管理员 用户 | 更新日期: 2023-09-27 18:10:32
我使用WIX 3.5
创建DLL的MSI安装程序。
我想做一个安装程序,允许一个简单的用户安装程序(每个用户),也管理员(每台机器)。
我必须定义的注册表项根据用户偏好而不同:
如果他选择"per user"选项,注册表项是HKEY_CURRENT_USER,
相反,如果他选择"每台机器"选项,注册表项是HKEY_LOCAL_MACHINE。
在每台机器(HKLM)的情况下,注册表项应该如何在代码中定义:
<Component Id="AdminAddinsRegEntries" Guid="8777A7AB-B147-4850-9F25-65011306E9C6" >
<RegistryKey Root="HKLM" Key="Software'Sparx Systems'EAAddins'AdminAddins" Action="createAndRemoveOnUninstall">
<RegistryValue Type="string" Value="AdminAddins.MyClass" />
</RegistryKey>
</Component>
在每用户(HKCU)的情况下,注册表项应该如何在代码中定义:
<Component Id="AdminAddinsRegEntries" Guid="8777A7AB-B147-4850-9F25-65011306E9C6" >
<RegistryKey Root="HKCU" Key="Software'Sparx Systems'EAAddins'AdminAddins" Action="createAndRemoveOnUninstall">
<RegistryValue Type="string" Value="AdminAddins.MyClass" />
</RegistryKey>
</Component>
如何添加条件以避免两个不同的安装程序?
在那个特定的注册表案例中,你使用HKMU注册表项,它会为你做那个切换。在更一般的情况下,您可能需要遵循以下指导方针,具体取决于安装中的其他内容:
http://msdn.microsoft.com/en-us/library/windows/desktop/dd408068 (v = vs.85) . aspx