我创建了一个WIX Burn Bundle。在Bundle我安装.Net 4(如果没有安装),然后再安装2个.msi文件。 1是第三部分,另一个是我使用WIX为我的软件创建的msi。我需要成为计算机上的管理员才能运行这些.msi文件。
如果用户不是管理员,我希望Burn捆绑包不做任何事情,即不安装任何东西。在我的产品软件中,我可以轻松地使用下面的内容 - 但是我无法在捆绑中执行此操作。我已经阅读了很多类似的帖子,但只是找不到我想做的工作示例。
<CustomAction Id="IsPrivileged" Error="You must be an Administrator to install [ProductName]." />
<InstallExecuteSequence>
<Custom Action='IsPrivileged' Before='LaunchConditions'>
Not Privileged
</Custom>
</InstallExecuteSequence>
答案 0 :(得分:9)
您可以使用Burn's built-in variables和WixBalExtension's Condition element
来使用相当于发布条件的捆绑包<bal:Condition Message="You can't elevate.">
<![CDATA[Privileged <> 0]]>
</bal:Condition>
<bal:Condition Message="You're not elevated.">
WixBundleElevated = 1
</bal:Condition>