【发布时间】: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 名称前添加反斜杠。