不需要UAC提升

时间:2018-12-13 09:04:35

标签: wix windows-installer uac wix3.11

我有一个wix设置,可以按用户和每台计算机安装。

我使用WixUI_Advanced对话框在perUser和perMachine之间进行选择。

但是,即使作为用户,安装程序最终还是会请求UAC特权,我不知道为什么。

我验证了通过设置InstallPrivileges="limited"可以正常运行。

<Package Id="*" InstallerVersion="500" Compressed="yes" 
    Description="!(loc.ProductDescription)"
    Comments="!(loc.Comments) $(var.VersionNumber)" InstallPrivileges="limited" />

是否可以根据用户选择有条件地设置InstallPrivileges

1 个答案:

答案 0 :(得分:0)

InstallPrivileges属性映射到Word Count Summary Info property的第3位。这将启用和禁用高程本身,并且旨在用于事先知道仅按用户安装的软件包中。

Windows Installer 5引入了Single Package Authoring,它允许您一起使用MSIINSTALLPERUSER和ALLUSERS有条件地做两件事:

  • 禁止显示海拔提示
  • 将文件和注册表项的计算机位置重定向到每个用户的位置

因此,如果您需要有条件的提升和有条件的每用户安装,并且如果您可以安全地需要Windows 7或更高版本,请找出有条件地设置MSIINSTALLPERUSER = 1和ALLUSERS = 2的最佳方法。 (我不知道是否有针对WiX执行此操作的预建对话框集。)

或者手动执行:使用在两个不同程序包之间进行选择的启动器;它们的主要区别应该在于InstallPrivileges属性以及它们安装数据的位置。

相关问题