Hi, just want to follow up on my own post. Parts of the problem can now be handled. I'm still interesting in learning how to resolve the remaining parts.
Okay, so here's what I've learned (all relevant for WiX 3.0 at least up to 3.0.4401.0): * IIS comes with a default web site. Installing IIS is currently a manual process - my WiX source is not handling this for me yet. * WiX's IIS extension works with IIS6. To work with IIS7 (available in e.g. Vista) you'll need to ensure that IIS6 management (backward compatibility) is selected when IIS7 is installed. * In my install I'm not interested in creating a new web site or overwrite the default web site (potentially removing it during uninstall). * The WiX <iis:WebSite> element clearly states that if it is placed under a Component element it will create a new website. If it is placed under Product or Fragment elements the WebSite element acts as a locator. So this is what I am after. <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:iis="http://schemas.microsoft.com/wix/IIsExtension" ...> <Fragment> <iis:WebSite Id="DefaultWebSite" Description="Default Web Site"> <iis:WebAddress Id="AllUnassigned" Port="80"/> </iis:WebSite> </Fragment> </Wix> * As the <iis:WebSite> element is outside of any features, it will always be executed - not necessarily nice if you only want this to happen for particular feature. If IIS is not installed this will fail. There is a described workaround for this involving disabling a WiX built-in custom action named 'ConfigureIIs' - as described by Bartek Szafko at http://bartekszafko.pl/index.php/blog/2008/01/15/p270 (thanks Bartek!) So you can use for example: <InstallExecuteSequence> <!-- Specify that configuration/setup of IIS (i.e. the built-in ConfigureIIs action) only should be executed if the Id='ComponentId' component is about to be installed. The '$ComponentId>2' is the condition for when to run the ConfigureIIs action. See Conditional Statement Syntax for detailed syntax description at: http://msdn.microsoft.com/en-us/library/aa368012(VS.85).aspx Detailed Notes (of how to understand the condition): * $<component-id> means that we want the Action State of the <component-id>. * >2 means that the components' action state must be greather than INSTALLSTATE_ABSENT (2), which covers values such as INSTALLSTATE_LOCAL (3) and INSTALLSTATE_SOURCE (4) --> <Custom Action="ConfigureIIs" After="InstallFiles">$ComponentId>2</Custom> </InstallExecuteSequence> * My component, which installs the virtual directory (in the Default Web Site) is then something as illustrated as: <Component Id="WebService" Guid="{GUID}"> <!-- Setup a virtual directory alias 'Web Service' to the WebServiceFolder directory. Note that the Alias is including the path to the WebDir, so that the virtual directory is created there. --> <iis:WebVirtualDir Id="WebServicesAlias" WebSite="DefaultWebSite" Alias="SubDir1/SubDir2/Web Service" Directory="WebServiceFolder" > <iis:WebApplication Id="ServiceWebApp" Name="SubDir1/SubDir2/Web Service"/> <iis:WebDirProperties Id="WebServicesFolderProps" AnonymousAccess="yes"/> </iis:WebVirtualDir> </Component> * So far so good. There is however a slight problem when running on Vista SP1 (using ISS7). Using Wix IIS extensions currently fails on Vista SP1, see http://sourceforge.net/mailarchive/forum.php?thread_name=b5927a150805300828h43b2581bqa92119d57c4a2620%40mail.gmail.com&forum_name=wix-users and Wix Bug Report: http://sourceforge.net/tracker/index.php?func=detail&aid=1982561&group_id=105970&atid=642714 The only known workaround is to run 'msiexec /i <msifile>' in an administrative command prompt. Regards, /Michael ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users