Automatic account creation is now enabled. Captcha authentication required for account creation and editing unless you are trusted here.
Web Deployment
From WiX Wiki at MindCapers
Create website setup with 2.0:
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:wix="http://schemas.microsoft.com/wix/2003/01/wi">
<xsl:output indent="no" method="xml"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/wix" xml:space="default">
<xsl:apply-templates />
</xsl:template>
<xsl:template match="wix:Component" xml:space="preserve">
<xsl:element name="ComponentRef"><xsl:attribute
name="Id"><xsl:value-of select="@Id"/></xsl:attribute></xsl:element>
</xsl:template>
</xsl:stylesheet>
To get the installation to work you will need to specify the port aswell. To do this use a property:
<WebSite Id="DefaultWebSite" Description="[TARGETWEBCOMBO]" > <WebAddress Id="AllUnassigned" Port="[TARGETWEBPORT]" /> </WebSite>
To get the port of the selected site should be easy when you use this:
HideVBFunction'=========================================================================== ' This function populates the MSI properties of the specified website '=========================================================================== Function PopulateMSIWebSiteProperties() Dim oIIS, oSite, r ' allow errors On Error Resume Next ' instanciate the IIS object Set oIIS = GetObject("IIS://localhost/W3SVC") ' check if an error occurred: if an error occurs pass the error number back to setup If Err.Number <> 0 Then MsgBox "Unable to open IIS W3SVC Root object - please ensure that IIS is running" & vbCrLf & _ " - Error Details: " & Err.Description & " [Number:" & Hex(Err.Number) & "]", vbCritical, "Error" PopulateMSIWebSiteProperties = ERROR_INSTALL_FAILURE Exit Function Else ' iterate through the sites For Each oSite in oIIS If oSite.Class = "IIsWebServer" Then ' if the description is the same as the specified description, get the details if oSite.ServerComment = Session.Property("TARGETWEBCOMBO")then 'get the properties of the site For Each item in oSite.ServerBindings strServerBinding = item BindingArray = Split(strServerBinding, ":", -1, 1) Session.Property("TARGETWEBPORT") = BindingArray(1) ' only do it for the first serverbinding (there may be more than 1) Exit For Next End If End If Next 'return success to MSI PopulateMSIWebSiteProperties = ERROR_SUCCESS End If 'clean up Set oIIS = Nothing End Function

