WiX: Installer always changes AppPool to enable 32-bit application

The WiX installer installs the Silverlight web application. It can work under 32 or 64-bit application pool. But when the installation is complete, I see that the selected application pool always has the value "Enable 32-bit applications." This is even for 64-bit pools. It is not fake, as it can modify the existing pool for previously installed 64 applications. I do not explicitly change this parameter. What is the cause of the problem?

Added sample code:

<Component Id="WebAppVDirComponent" Guid="C7A4B0E8-2389-4A2A-B285-96960BEE1C52" KeyPath="yes"> <Condition><![CDATA[RBGROUP_HOSTING = "iis"]]></Condition> <iis:WebVirtualDir Id="VDir" Alias="[WEB_APP_NAME]" Directory="INSTALLDIR" WebSite="TheWebSite" > <iis:MimeMap Id="SilverlightMimeType" Extension=".xap" Type="application/x-silverlight-app" /> <iis:WebApplication Id="WorkWebApplication" Name="[WEB_APP_NAME]" WebAppPool="TheAppPool"/> </iis:WebVirtualDir> <iis:WebAppPool Id="TheAppPool" Name="[APP_POOL_NAME]" ></iis:WebAppPool> <CreateFolder/> </Component> 
+7
source share
1 answer

It was, in my opinion, a very elegant way.

If you place the declaration of the <iis:WebAppPool> in <Component> , marked as Win64="yes" , the application pool will be created with the Enable32bit flag set to false . Otherwise (i.e. by default) it will be created with Enable32bit set to true .

I'm not sure how it will behave when you do not create an application pool with your installation, but instead refer to an existing one. I expect him to not change this flag at all. You can experiment with this to find out how it works.

And note: I would not install into an existing application pool or website. It is much more difficult to maintain - remember that after uninstallation you must leave the machine in the "before installation" state. This means that you have to support backing up / restoring the state of everything that you change with custom actions ... Brrr ...

+15
source

All Articles