【问题标题】:Wix Burn Bundle - Must be AdministratorWix Burn Bundle - 必须是管理员
【发布时间】:2013-08-21 14:11:39
【问题描述】:

我创建了一个 WIX Burn Bundle。在捆绑包中,我安装 .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>

【问题讨论】:

  • 寻找提升的权限
  • 一种方法是在启动捆绑包时询问管理员凭据,即将其执行级别设置为“需要管理员”。但是我看到 Rob 说 Burn 不是为提升运行而设计的,所以你可能会遇到限制:windows-installer-xml-wix-toolset.687559.n2.nabble.com/…

标签: wix installation windows-installer


【解决方案1】:

您可以使用 Burn's built-in variablesWixBalExtension'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>

【讨论】:

  • 有谁知道为什么这对我不起作用?运行 v3.11.0.1701
  • “你不能提升”。条件在 3.11.1 中对我不起作用。当以没有管理员权限的用户身份运行时,希望看到此消息,但在系统询问启用管理员权限的用户后,安装继续正常进行。也不确定为什么必须逃避“特权”条件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-12-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多