I am struggling with a repeatable but not consistent problem.  I am a new WIX 
user on 3.5.2519 integrated with Visual Studio 2010 on Windows 7x64.

I am trying to install a web application including configuring the virtual 
directory and web application itself.   I have done this before, and have 
working Wix projects with it.   And in fact this one works-on some systems 
(e.g. notably Windows 2008) but not others (e.g. Windows 7).    I do not have 
enough places to test to tell if it is specific to the OS, or just that 
machine.  Prior Wix projects do work on the failing machine.

The installation runs fine, the product installed, the directory created, but 
it is not made into a web application, it is just a directory.  I can manually 
make it a web app and it works (i.e. it is structurally otherwise OK).  I have 
rearranged the install in many ways, based on examples.  All work the same way 
- installs fine, but is not made a web app.

But on another system (e.g. W2008) it works fine.

I have compared an MSIEXEC verbose log with a similar application that works 
without finding any problem (but this is not an area I am familiar with).  
Nothing jumps out as being an error.

Other than continuing to do a lot of trial and error, can someone suggest what 
to try?

Linwood

PS. Here is the product file.  I hope posting a lot of code in is OK, not sure 
how the formatting will survive email.   The log is pretty lengthy, will not 
post it unless asked (or if someone can guide me to the relevant portion).

PPS. Could the metadata on this one IIS be corrupt?   Is there some way to 
clean it out?   I have done an IISReset /Restart.



<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi";
       xmlns:iis="http://schemas.microsoft.com/wix/IIsExtension";
       xmlns:util="http://schemas.microsoft.com/wix/UtilExtension";
       xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension";>

       <!-- Be sure to increment the 3rd piece (MSI ignores the 4th!!!)
            The kit will upgrade the same or older version, but not newer - you 
must deinstall manually first

              Note both product and package code are auto-generated to force a 
major upgrade, but the upgrade code is always the same
              to match up to prior installations. Also note that the 
AllowSameVersionUpgrades=yes is required to keep a rebuild (during test for 
example)
              of the same version from going in side by side.
       -->

       <Product Id="*" Name="AuditBrowser" Language="1033" Version="0.0.3" 
Manufacturer="LHE" UpgradeCode="{9A63AE3E-07BD-4442-BBCA-C62DDCAEA735}">
              <Package Id='*'
              Description="AuditBrowser"
              InstallerVersion='200'
              InstallScope='perMachine'
              Languages='1033'
              SummaryCodepage='1252'
              Compressed='yes'
              AdminImage='no'
              Platforms='Intel'
              ReadOnly='yes'
              ShortNames='no'
              InstallPrivileges="elevated"
              Keywords='Installer,MSI,Database' />

              <MajorUpgrade Schedule='afterInstallInitialize' 
AllowSameVersionUpgrades='yes' AllowDowngrades='no' DowngradeErrorMessage="A 
later version of [ProductName] is already installed. Setup will now exit."/>
              <PropertyRef Id="NETFRAMEWORK35"/>
              <Condition Message='This setup requires the .NET Framework 3.5 
profile installed.'>
                     <![CDATA[Installed OR NETFRAMEWORK35]]>
              </Condition>

              <!-- Check to see if IIS is installed. It it's not, error out. -->
              <Property Id="IIS_MAJOR_VERSION">
                     <RegistrySearch Id="CheckIISVersion"
                                                Root="HKLM"
                                                Key="SOFTWARE\Microsoft\InetStp"
                                                Name="MajorVersion"
                                            Type="raw" />
              </Property>

              <Condition Message="IIS must be installed">
                     Installed OR IIS_MAJOR_VERSION
              </Condition>
              <!-- Go find the IIS root directory from the registry. On most 
machines
         that defaults to C:\inetpub\wwwroot. This will be the directory we
         install into. -->
              <Property Id="IISROOT">
                     <RegistrySearch Id="IISROOT"
                                                Type="directory"
                                                Root="HKLM"
                                                Key="Software\Microsoft\InetStp"
                                                Name="PathWWWRoot" />
              </Property>
              <Condition Message="IIS does not appear to be installed 
correctly, the root directory is not set.">
                     Installed OR IISROOT
              </Condition>


              <Media Id="1" Cabinet="AuditBrowser.cab" EmbedCab="yes" />


              <!-- The root of life for any installer. -->
              <Directory Id="TARGETDIR" Name="SourceDir">
                     <!-- Install into the ISS root directory we found earlier. 
-->
                     <Directory Id="IISROOT" Name='WebDir'>
                           <!-- Here's this installers install location. -->
                           <Directory Id='INSTALLDIR' Name='AuditBrowser'>
                                  <Component Id="ContentFiles"    
Guid="{F9BBF533-F1EA-46E1-A031-69B7B2528DB5}">
                                                <File Id="DatabaseView"     
Source="$(var.AuditBrowser.ProjectDir)\Browse.aspx"  />
                                                <File Id="Default"          
Source="$(var.AuditBrowser.ProjectDir)\Default.htm"  />
                                                <File Id="Logo"             
Source="$(var.AuditBrowser.ProjectDir)\Logo.gif"  />
                                                <File Id="WebConfig"        
Source="$(var.AuditBrowser.ProjectDir)\Web.Config"  />
                                  </Component>
                                  <Directory Id="BinDir" Name="bin">
                                         <Component Id="DLLFiles" 
Guid="{313BDE45-CF12-45C8-933C-985045EE6E7C}">
                                                <File Id="TheDLL"   
Source="$(var.AuditBrowser.TargetDir)\AuditBrowser.dll" />
                                         </Component>
                                  </Directory>
                                  <Component Id='WebVirtualDirComponent' 
Guid="{40C9F045-2C0E-42D1-9FFA-C61575B0628E}"  >
                                         <CreateFolder/>
                                         <!-- The Alias attribute is the name 
thata will be put into IIS.-->
                                         <!-- The Directory attribute is the 
"Physical Path" property in IIS and needs to tie to an ID specified in the 
setup. -->
                                         <!-- The WebSite attribute ties to a 
<WebSite> element in the  setup file. As this goes into "Default Web Site" that 
element is not under a component.-->
                                         <iis:WebVirtualDir 
Id='TestWebVirtualDir' Alias='AuditBrowser' Directory='INSTALLDIR' 
WebSite='DefaultWebSite'>
                                                <iis:WebApplication 
Id='TestWebApplication' Name='AuditBrowser' />
                                                <iis:WebDirProperties 
Id="MyWebVirtDirProperties" AnonymousAccess="no" BasicAuthentication="no" 
WindowsAuthentication="yes"  DefaultDocuments="Default.htm" />
                                         </iis:WebVirtualDir>
                                  </Component>
                           </Directory>
                     </Directory>
              </Directory>

              <!-- Placing this outside the component means it is locating, not 
creating the web site -->
              <!-- Note that this: 
http://www.wintellect.com/CS/blogs/jrobbins/archive/2011/01/25/install-a-new-virtual-directory-to-default-web-site-with-wix.aspx
 was a good reference -->

              <iis:WebSite Id='DefaultWebSite' Description='Default Web Site' 
Directory='INSTALLDIR'>
                     <iis:WebAddress Id='AllUnassigned' Port='80' />
              </iis:WebSite>

              <!-- The default is that ROOT_DRIVE is the biggest drive - this 
forces the install to C (where we hope inetpub is)-->

              <Feature Id="Complete" Title="AuditBrowser Web" Level="1" 
Display="expand">
                     <ComponentRef Id="ContentFiles"/>
                     <ComponentRef Id="DLLFiles"/>
                     <ComponentRef Id="WebVirtualDirComponent"/>
              </Feature>

       </Product>
</Wix>


------------------------------------------------------------------------------
BlackBerry&reg; DevCon Americas, Oct. 18-20, San Francisco, CA
The must-attend event for mobile developers. Connect with experts. 
Get tools for creating Super Apps. See the latest technologies.
Sessions, hands-on labs, demos & much more. Register early & save!
http://p.sf.net/sfu/rim-blackberry-1
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to