I am embedding SQL Server 2008 Express with SP1 into an installer without
using the Click Once bootstrapper so I have complete control over the
installation via configuration file, and learning as I go since this is my
first attempt at a fully functional installer. I have Framework 3.5 SP1 and
Windows Installer 4.5 installing as prerequisites via the bootstrapper, no
problems there. And for the moment I am copying all of the required files
for SQL 2008 to the users TempFolder, still need to figure out how to run it
from source media..

My development platform is Vistax64 and VS2008, my target platform is a VM
running Vista32 and I am getting a strange error code from my CA used to
start the Setup.exe for SQL 2008 when running on the VM. Thought it might
have something to do with where the installer is created and where it
ultimately gets run from, a network share in this case.

The RegistrySearch elements return the correct values if SQL 2008 is already
installed, which disables or enables the feature for installing SQL. The
Property="Sql2008Path" is being set correctly:

'C:\Users\Randall\AppData\Local\Temp\SQLExpress2008SP1\Setup.exe
/ConfigurationFile=ConfigurationFile.ini
/PCUSOURCE=C:\Users\Randall\AppData\Local\Temp\SQLExpress2008SP1\PCUSOURCE
/SAPWD=SpankMe101'

When CA StartSQL2008Setup fires, it is returning an error code 1631, log
files for SQL setup.exe indicate that the configuration file is being found
so all the settings are correct and SQL Setup.exe is running. Is this an
issue of not being able to start another setup while one is currently
running? Or am I missing soemthing else. Here's the relevant sections my
Wxs, I was hoping someone could point out what I may have missed since I am
new at this.

Custom Actions and Properties:

    <Property Id="HASSQL2008_64">

      <RegistrySearch Id="HasSqlServer64" 

                      Root="HKLM" 

                      Key="SOFTWARE\Microsoft\Microsoft SQL
Server\100\Bootstrap Release\CurrentVersion" 

                      Name="Version" 

                      Type="raw" Win64="yes"  />

    </Property>

 

    <Property Id="HASSQL2008_32" Value="0">

      <RegistrySearch Id="HasSqlServer32"

                      Root="HKLM"

                      Key="SOFTWARE\Microsoft\Microsoft SQL
Server\100\Bootstrap Release\CurrentVersion"

                      Name="Version"

                      Type="raw" Win64="no"  />

    </Property>

 

 

<!-- CA to set the location and start up parameters for SQL Setup.exe -->

<CustomAction Id="SetSQL2008Path"

                  Property="Sql2008Path"

                  Value="[TempFolder]SQLExpress2008SP1\Setup.exe
/ConfigurationFile=ConfigurationFile.ini
/PCUSOURCE=[TempFolder]SQLExpress2008SP1\PCUSOURCE /SAPWD='SpankMe101'" 

                  Execute="immediate">

    </CustomAction>

 

    <!-- Custom actions to start Setup.exe for installing SQL Server 2008-->

    <CustomAction  Id="StartSQL2008Setup"

                   Property="Sql2008Path" 

                   ExeCommand=""

                   Impersonate="yes"

                   Return="asyncWait">

      

    </CustomAction>

 

    

    <InstallExecuteSequence>

      <Custom Action="SetSQL2008Path" After="AppSearch" />

      <Custom Action="StartSQL2008Setup" After="InstallFinalize" />

    </InstallExecuteSequence>

 

Feature Id="SQLExpress2008SP1" Title="SQL Server 2008"  AllowAdvertise="yes"
Level="1" Description="Installs SQL Server 2008" Display="expand"
TypicalDefault="install">

      <ComponentGroupRef Id="SQLExpress2008SP1Group" Primary="yes"/>

      <Condition Level="0"><![CDATA[(HASSQL2008_64 = "10.0.1600.22") OR
(HASSQL2008_32 = "10.0.1600.22")]]></Condition>

</Feature>

 

 

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

Reply via email to