2
我正在使用以下代碼在我的msi-setup中安裝Windows功能(如IIS),該功能還會安裝我的wcf服務。Wix - 我在哪裏可以安裝Windows功能
<Property Id="INSTALLIISPROP" Value="C:\Windows\System32\dism.exe"></Property>
<CustomAction Id="InstallIISCA" Return="check" Property="INSTALLIISPROP" Execute="deferred" HideTarget="yes" Impersonate="yes"
ExeCommand="/online /enable-feature /featurename:IIS-WebServerRole /featurename:IIS-WebServerManagementTools /featurename:IIS-ManagementConsole" ></CustomAction>
<InstallExecuteSequence>
<Custom Action="InstallIISCA" Before="InstallFinalize">NOT Installed</Custom>
</InstallExecuteSequence>
做工精細,只是我需要的非法入境者服務安裝過程中已經安裝(獲取安裝的websides,ECT的列表在UI)。我創建了一個謝勝利,安裝項目,並把代碼在那裏,但如果我有一個虛擬文件只執行我的命令:
<Fragment>
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
<Component Id="ProductComponent" Guid="ff876420-51ed-4bfc-bfd0-167a6333bf5e">
<File Id="Product.wxs" Source="Product.wxs" KeyPath="yes" Checksum="yes"/>
</Component>
</ComponentGroup>
</Fragment>
此外,我不希望在我的「已安裝應用程序」列表中的項目謝勝利。這將是什麼「正常」的位置?我可以直接從Bootstrapper執行我的命令嗎?或者我可以在加載UI之前執行Custiom Action並檢查任何條件?
<Chain >
<PackageGroupRef Id="NetFx45Web"/>
<MsiPackage SourceFile="ServiceSetup.msi" EnableFeatureSelection="yes" DisplayInternalUI="yes" ForcePerMachine="yes"/>
</Chain>