1
我使用以下Wix代碼在IIS中創建WebApplication並將其分配給特定的應用程序池。如果WebAppPool不存在,如何失敗安裝?
<iis:WebAppPool Id="AppPool_Wcf" Name="$(var.WCF_APP_POOL)" />
<iis:WebSite Id="Web_site" Description="$(var.WEB_SITE_DESCRIPTION)" SiteId="[SITEID]">
<iis:WebAddress Id="Web_Address" Port="*"/>
</iis:WebSite>
<DirectoryRef Id="TARGETDIR">
<Directory Id="SITEPATH">
<Directory Id="WCF_VIRT_DIR" Name="$(var.WCF_VIRT_DIR)">
<Component Id="IIS_Wcf" Guid="$(var.deploy.wcf.guid)" KeyPath="yes">
<iis:WebVirtualDir Id="Wcf_VirtualDir" Alias="$(var.WCF_VIRT_DIR)" WebSite="Web_site" Directory="WCF_VIRT_DIR">
<iis:WebApplication Id="Wcf_Application" Name="$(var.WCF_VIRT_DIR)" WebAppPool="AppPool_Wcf" />
</iis:WebVirtualDir>
</Component>
</Directory>
</Directory>
</DirectoryRef>
應用程序池應該已經存在,因爲它與其他一些應用程序共享。
如果它不存在,安裝程序成功,將Web應用程序分配給一個神祕的<Invalid Application Pool>
(可以在Web應用程序屬性中看到)。 該應用程序甚至可以工作!
如果未找到應用程序池,我該如何使安裝失敗?