Hi Ben,

I see.  I'm doing just the opposite.  Installing new website/app, but
leaving default alone.  Not sure how to install/uninstall just the app
like you need.  Sorry for the confusion and sorry I don't have any good
info on that one.  If I run across it, I'll be sure to share.

Thx, Craig

-----Original Message-----
From: Benjamin Podszun [mailto:benjamin.pods...@gmail.com] 
Sent: Tuesday, October 13, 2009 11:21 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Removing WebVirtualDir / WebApplication
onuninstallonly

Hi Craig.

Thanks for the fast response! Actually I found your code/the nabble link
below already before posting to this list, I just don't understand if
that
helps me. Probably I'm just too new or not able to express my problem in
a
good way:

I install on machines where a default site is present (and it contains
some
other web applications already). I am supposed to install a new web
application for the default site(!). When my msi is removed I need to
remove
that application only. Not the web site (that's why I don't include it
as
component so far), since that's always the default site for me and must
not
be removed.

I'm not sure if remembering something helps me: I never use a custom
port,
address or anything.

Regards,
Ben

On Tue, Oct 13, 2009 at 5:41 PM, Scharp, Craig
<craig.sch...@zytax.com>wrote:

> Hi Ben,
>
> I have resolved all install/uninstall issues with websites in IIS with
> the code below.  By storing properties in registry and reading them
> back, all works fine.
>
> I have included the port, description (name), hostheader value and IP
> address as registry values.  This allows me to have multiple websites
on
> same port or different ports if they use host header.  Also, I can
have
> multiple sites and the default website and the correct site is
> uninstalled without affecting default website.
>
> Thx to the following link for suggesting storing values in registry:
>
http://n2.nabble.com/Default-website-gets-removed-on-Uninstall-td731259
>
>
> Code in the wxs file is listed below:
>
> ----------------------------------------
> 1. Put all IIS: in components like this
> ----------------------------------------
>
>    <Directory Id="TARGETDIR" Name="SourceDir">
>          <Component Id="WebsiteIPComponent" Guid="{SOMEGUID}">
>                <RegistryValue Id="WebsiteIP" Root="HKLM"
> Key="Software\CompanyName\[ProductName]" Name="WebsiteIP"
> Value="[WEBSITEIP]" Type="string"/>
>      </Component>
>          <Component Id="WebsitePortComponent" Guid="{SOMEGUID}">
>                <RegistryValue Id="WebsitePortNbr" Root="HKLM"
> Key="Software\CompanyName\[ProductName]" Name="WebsitePortNbr"
> Value="[WEBSITEPORT]" Type="string"/>
>      </Component>
>          <Component Id="WebsiteDescComponent" Guid="{SOMEGUID}">
>                <RegistryValue Id ="WebsiteDescription" Root="HKLM"
> Key="Software\CompanyName\[ProductName]" Name="WebsiteDescription"
> Value="[WEBSITEDESCRIPTION]" Type="string"/>
>      </Component>
>          <Component Id="WebsiteHostHeaderComponent" Guid="{SOMEGUID}">
>                <RegistryValue Id = "WebsiteHostHeader" Root="HKLM"
> Key="Software\CompanyName\[ProductName]" Name="WebsiteHostHeader"
> Value="[WEBSITEHOSTHEADER]" Type="string"/>
>      </Component>
>      <Component Id="NewWebsiteConfigASP" Guid="{SOMEGUID}">
>        <iis:WebSite Id="IISWebsite" Description="[WEBSITEDESCRIPTION]"
> Directory="TARGETDIR" AutoStart="yes" ConfigureIfExists="yes"
> StartOnInstall="yes">
>          <iis:WebAddress Id="IISWebAddress" Port="[WEBSITEPORT]"
> IP="[WEBSITEIP]" Header="[WEBSITEHOSTHEADER]" />
>          <iis:WebDirProperties Id="IISWebDirProperties" Execute="yes"
> Read="yes"
>
DefaultDocuments="default.aspx,index.aspx,index.htm,index.html,default.h
> tm,default.html" />
>          <iis:WebDir Id="IISAppDataWebDir" Path="App_Data">
>            <iis:WebDirProperties Id="IISAppDataWebDirProperties"
> Write="yes" Read="yes"
>
DefaultDocuments="default.aspx,index.aspx,index.htm,index.html,default.h
> tm,default.html" />
>          </iis:WebDir>
>          <iis:WebApplication Id="WebApplication"
> Name="[WEBAPPLICATIONNAME]" WebAppPool="WebAppPool">
>          </iis:WebApplication>
>        </iis:WebSite>
>        <iis:WebAppPool Id="WebAppPool" Name="[WEBAPPLICATIONPOOLNAME]"
> Identity="networkService" />
>        <Condition>TARGETMODE = "NewWebsite" AND SCRIPTLANGUAGE =
> "ASP"</Condition>
>      </Component>
>      <Component Id="ExistingWebsiteConfigASP" Guid="{SOMEGUID}">
>        <iis:WebSite Id="IISWebsiteExisting"
> Description="[WEBSITEDESCRIPTION]" ConfigureIfExists="no"
> Directory="TARGETDIR">
>          <iis:WebAddress Id="IISWebAddressExisting"
> Port="[WEBSITEPORT]" IP="[WEBSITEIP]" Header="[WEBSITEHOSTHEADER]" />
>          <iis:WebVirtualDir Id="WebVirtualDirectory"
> Alias="[VIRTUALDIRECTORYNAME]" Directory="TARGETDIR">
>            <iis:WebDirProperties
> Id="IISWebVirtualDirPropertiesExisting" Execute="yes" Read="yes"
>
DefaultDocuments="default.aspx,index.aspx,index.htm,index.html,default.h
> tm,default.html" />
>            <iis:WebApplication Id="WebApplicationExisting"
> Name="[WEBAPPLICATIONNAME]" WebAppPool="WebAppPoolExisting">
>            </iis:WebApplication>
>          </iis:WebVirtualDir>
>        </iis:WebSite>
>        <Condition>TARGETMODE = "ExistingWebsite" AND SCRIPTLANGUAGE =
> "ASP"</Condition>
>        <iis:WebAppPool Id="WebAppPoolExisting"
> Name="[WEBAPPLICATIONPOOLNAME]" Identity="networkService" />
>      </Component>
> .
> .
> .
> </Directory>
>
> ----------------------------------------
> 2. Add componentref's in your feature like this:
> ----------------------------------------
>
>                <Feature Id="WebsiteFeature" Title="Website
> Installation" Description="This feature will install the website
> component" Level="1" Display="expand">
> .
> .
> .
>                        <ComponentRef Id="WebsiteIPComponent" />
>                        <ComponentRef Id="WebsitePortComponent" />
>                        <ComponentRef Id="WebsiteDescComponent" />
>                        <ComponentRef Id="WebsiteHostHeaderComponent"
/>
> .
> .
> .
>                </Feature>
>
> ----------------------------------------------------------
> 3. Add properties and get values from registry like this:
> ----------------------------------------------------------
>
>    <Property Id="WEBSITEIP">
>                <RegistrySearch Id="WebsiteIP" Root="HKLM" Type="raw"
> Name="WebsiteIP" Key="Software\CompanyName\[ProductName]"/>
>        </Property>
>    <Property Id="WEBSITEPORT">
>                <RegistrySearch Id="WebsitePortNbr" Root="HKLM"
> Type="raw" Name="WebsitePortNbr"
> Key="Software\CompanyName\[ProductName]"/>
>        </Property>
>    <Property Id="WEBSITEDESCRIPTION">
>                <RegistrySearch Id="WebsiteDescription" Root="HKLM"
> Type="raw" Name="WebsiteDescription"
> Key="Software\CompanyName\[ProductName]"/>
>        </Property>
>    <Property Id="WEBSITEHOSTHEADER">
>                <RegistrySearch Id="WebsiteHostHeader" Root="HKLM"
> Type="raw" Name="WebsiteHostHeader"
> Key="Software\CompanyName\[ProductName]"/>
>        </Property>
>
> Hope this helps.
>
> Thx, Craig
>
>
> -----Original Message-----
> From: Benjamin Podszun [mailto:benjamin.pods...@gmail.com]
> Sent: Tuesday, October 13, 2009 10:05 AM
> To: wix-users@lists.sourceforge.net
> Subject: [WiX-users] Removing WebVirtualDir / WebApplication on
> uninstallonly
>
> Hi.
>
> I can successfully deploy an application that includes a web
application
> among others (thanks to this list) like this:
>
> <!-- Inside a component -->
> <iis:WebVirtualDir Id="SomeWebApp" Alias="SomeAlias"
> Directory="INSTALLLOCATION" WebSite="DefaultWebSite">
>  <iis:WebApplication Id="SomeWebApp" Name="SomeName" />
>  <iis:WebDirProperties Id="SomeDirProps" DefaultDocuments="Some.asmx"
> />
> </iis:WebVirtualDir>
> <!-- Component ends around here -->
>
> <!-- Website reference - not in a component -->
> <iis:WebSite Id='DefaultWebSite' Description='Default Web Site'
> Directory='INSTALLLOCATION'>
>  <iis:WebAddress Id="AllUnassigned" Port="80" />
> </iis:WebSite>
>
> This works fine, but leaves the web application in place (and a
> uninstall/reinstall cycle fails, because the web application
"SomeName"
> exists already..). I understand that I could move the WebSite
> declaration
> into a component, but according to my understanding so far that would
> remove
> the default website in my case (which is shared).
>
> Is there any workaround for that? Am I supposed (forced?) to create a
> website in my component for uninstall support?
>
> Thanks a lot in advance,
> Ben
>
------------------------------------------------------------------------
> ------
> Come build with us! The BlackBerry(R) Developer Conference in SF, CA
> is the only developer event you need to attend this year. Jumpstart
your
> developing skills, take BlackBerry mobile applications to market and
> stay
> ahead of the curve. Join us from November 9 - 12, 2009. Register now!
> http://p.sf.net/sfu/devconference
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
>
------------------------------------------------------------------------
------
> Come build with us! The BlackBerry(R) Developer Conference in SF, CA
> is the only developer event you need to attend this year. Jumpstart
your
> developing skills, take BlackBerry mobile applications to market and
stay
> ahead of the curve. Join us from November 9 - 12, 2009. Register now!
> http://p.sf.net/sfu/devconference
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
------------------------------------------------------------------------
------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and
stay 
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to