我创建了一个 WIX 刻录包。在捆绑包中,我安装了 .Net 4(如果未安装),然后再安装 2 个 .msi 文件。 1 是第三部分 msi,另一个是我使用 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>
您可以使用相当于启动条件的捆绑包Burn 的内置变量 http://wixtoolset.org/documentation/manual/v3/bundle/bundle_built_in_variables.html and WixBalExtension 的 Condition 元素 http://wixtoolset.org/documentation/manual/v3/xsd/bal/condition.html:
<bal:Condition Message="You can't elevate.">
<![CDATA[Privileged <> 0]]>
</bal:Condition>
<bal:Condition Message="You're not elevated.">
WixBundleElevated = 1
</bal:Condition>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)