We are getting some unexpected and undesirable behavior from iis:WebAppPool and 
iis:WebSite extensions, just checking to see if we are doing something wrong.

background
Specifically we have the following relevant snippet of wix that defines our 
appPool setting and the WebSite we want created to use it.    Everything works 
as expected when installing against a box where none of this is present.   We 
do not remove the appPool and the WebSite on uninstall because we don't want 
ops to have to redo ssl binding certificate associates and other environment 
specific stuff after each uninstall / reinstall of a new build.

What we are finding is installing against a host where the appPool and website 
is already in place appears to reapply the appPool setting.   Specifically if 
some non-deliverable specific vdir application has been manually created under 
the website and granted an appPool setting other than our deliverable specific 
appPool then when we reinstall that vdir application ends up getting its 
appPool changed.   Similarly if ops has changed the appPool we provisioned on 
first installer pass to use a different identity when we reinstall it gets set 
back to the identity defined in our wix.

question
is this behavior expected and is there any way we can leave appPool and website 
in place after first install attempt and not have an custom tweaks made by ops 
reverted during subsequent installer passes?

<Component Id="Site1AppPool" Guid="ACF34F1A-5778-4A98-8AF9-7CF38A81AF6F" 
KeyPath="yes" Permanent="yes">
    <iis:WebAppPool Id="Site1AppPool" Name="RxpAppPool" 
Identity="networkService" />
    <!--<util:User Id="Site1AppPoolUser" Name="[%USERDOMAIN]\svclogon" 
Password="svcLogonPwd" />-->
    <!--<iis:WebAppPool Id="Site1AppPool" Name="RxpAppPool" Identity="other" 
User="Site1AppPoolUser" RecycleMinutes="1740" RecycleRequests="32767" 
MaxCpuUsage="100" QueueLimit="1000" MaxWorkerProcesses="1" />-->
</Component>

<Component Id="Site1AppPoolX86" Guid="8A0BE2FE-07FC-4379-878E-DB173B9ED244" 
KeyPath="yes" Permanent="yes">
    <iis:WebAppPool Id="Site1AppPoolX86" Name="RxpAppPool (x86)" 
Identity="networkService"  />
    <!--<util:User Id="Site1AppPoolUser" Name="[%USERDOMAIN]\svclogon" 
Password="svcLogonPwd" />-->
    <!--<iis:WebAppPool Id="Site1AppPoolX86" Name="RxpAppPool (x86)" 
Identity="other" User="Site1AppPoolUser" RecycleMinutes="1740" 
RecycleRequests="32767" MaxCpuUsage="100" QueueLimit="1000" 
MaxWorkerProcesses="1" />-->
</Component>

<Component Id="Site1" Guid="35BD9B02-7833-4CCE-9BC6-D8B8B49E5347" 
Permanent="yes">
    <File Id="InstalledSite1.txt" Name="InstalledSite1.txt" 
Source="Resources\InstalledComponent.txt" KeyPath="yes" />

    <!-- TODO: copy Site1Dir files into place here -->

    <iis:WebSite Id="Site1WebSite" Description="Rxp Web Site" 
Directory="Site1Dir">
        <!--<iis:CertificateRef Id="Site1Certificate" />-->
        <iis:WebApplication Id="Site1App" Name="Rxp Application" 
WebAppPool="Site1AppPool" Isolation="medium" />
        <!-- NOTE: if web address settings match default web site settings than 
default web site will be overwritten. -->
        <iis:WebAddress Id="Site1WebAddress" Port="[SITE1PORT]" />
        <iis:WebAddress Id="Site1WebAddressSsl" Port="[SITE1PORTSSL]" 
Secure="yes" />
        <iis:WebDirProperties Id="Site1WebDirProperties" AnonymousAccess="no" 
WindowsAuthentication="yes" Read="yes" Write="no"
            Script="yes" Execute="no" AccessSSL="yes" AccessSSL128="yes"   />
    </iis:WebSite>
</Component>

------------------------------------------------------------------------------
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to