【问题标题】:How to use dism.exe in WiX ExePackage for IIS feature activation?如何在 WiX ExePackage 中使用 dism.exe 来激活 IIS 功能?
【发布时间】:2015-01-20 13:30:32
【问题描述】:

我已经使用 WiX 3.9 创建了一个引导程序项目。 在这个项目中,我安装了 IIS Express,然后激活了 IIS 功能。 到目前为止,我将计算机中的 Dism.exe 作为资源添加并激活了类似的功能:

<ExePackage Id='IIS_WebserverRole'
            DisplayName='Installing IIS: IIS-WebServerRole'
            PerMachine='yes'
            SourceFile='.\Resources\Dism.exe'
            InstallCondition='SetupType="1" OR SetupType="3"'
            InstallCommand='/Online /Enable-Feature /FeatureName:IIS-WebServerRole'>
</ExePackage>

这很好用,但我认为最好使用我们可以在要安装的计算机上的 C:\Windows\System32\ 中找到的 Dism.exe,而不是我自己计算机上的资源文件。 所以我尝试了这个:

<ExePackage Id='IIS_WebserverRole'
            DisplayName='Installing IIS: IIS-WebServerRole'
            PerMachine='yes'
            SourceFile='[SystemFolder]Dism.exe'
            InstallCondition='SetupType="1" OR SetupType="3"'
            InstallCommand='/Online /Enable-Feature /FeatureName:IIS-WebServerRole'>
</ExePackage>

[SystemFolder] 是一个 Burn 标准变量,每个示例返回“C:\Windows\System32\”。 但这不起作用。 所以我尝试了以下一个。 您可以在本文的第一个答案中找到它:

Install IIS if not installed yet

<ExePackage Id='IIS_WebserverRole'
            DisplayName='Installing IIS: IIS-WebServerRole'
            PerMachine='yes'
            SourceFile='.\Resources\run.bat'
            InstallCondition='SetupType="1" OR SetupType="3"'
            InstallCommand='Dism.exe /Online /Enable-Feature /FeatureName:IIS-WebServerRole'>
</ExePackage>

但即使这样也行不通。 我总是在日志文件中收到错误,无法执行可执行文件;)

怎么了? 任何人都可以给我一个提示,该怎么办? 提前致谢!

【问题讨论】:

  • 您是否尝试将此 SourceFile='[SystemFolder]Dism.exe' 更改为 SourceFile='[SystemFolder]\Dism.exe'?在 exe 名称前添加反斜杠。

标签: iis wix


【解决方案1】:

改用[System64Folder]dism.exe

--- 编辑 ---

https://github.com/wixtoolset/issues/issues/5307

如上所述,WiX 指向的具有属性[SystemFolder] 的目录已更新。

除非使用[System64Folder],否则在 64 位操作系统中,[SystemFolder] 将指向 C:\Windows\SysWow64 而不是 C:\Window\System32,其中 64 位版本的 dism.exe 所在的位置。

这个问题是在更改之前提出的,但是当我到达此页面时让我感到困惑,因此认为值得一提。

【讨论】:

  • 您能否详细说明为什么这有助于 OP?简短的答案往往不如那些解释了它们如何更好的较长的答案有用。
猜你喜欢
  • 2014-04-03
  • 2018-04-06
  • 2011-02-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-11
  • 2019-05-20
  • 2017-06-14
相关资源
最近更新 更多