Wednesday, March 28, 2012

Installing feature Pack components with an Application

Hi,

I have developed an application the uses SMO and RMO, now it is time to write the setup for it.

For the setup experience I want to be able to install my application on a clean copy of XP SP2 which has dotnet 2.0 already installed. As such I have downloaded the following from the Feature Pack for Sql 2005 (http://www.microsoft.com/downloads/details.aspx?familyid=d09c1d60-a13c-4479-9b91-9e8b9d835cdc&displaylang=en):

msxml6.msi

sqlncli.msi

sqlserver2005_xmo.msi

Now I'm thinking that I need to launch these msi's from within my own application msi, however, I don't want any UI displayed and I want my own msi to include these msi's when it's calculating the cost of the install.

Is this the correct way to go about getting these components on to a clients machine, i.e. nested msi install, or is there a better way?

Does anyone know what command line args (msiexec) or other options I need to provide for a UI less install of the above?

FYI I'm using VS 2005 to author the install.

Thanks for your help

Graham

Infact, why aren't msm (merge modules) given anymore?

Graham

|||

To get a silent install, use the "\qn" flag for MSIExec. In order to 'chain' MSI installations, you'll need to create a setup.exe wrapper that will launch the MSIs in series.

Here's an example from VS.Net: http://www.microsoft.com/downloads/details.aspx?FamilyId=BF253CFD-1EFC-4FC5-BA7E-6A6F21403495&displaylang=en that installs the .NET Framework (hardcoded) then installs your MSI using a settings.ini file. It'll need to be changed to remove the hardcoded installation and then to perhaps iterate through the .ini file to install multiple MSIs.

In response to why we don't ship MSMs any more, it is because we can't service them. If we discover a security (or other) problem with one of the files in the redist packages, we can't issue a QFE for MSMs, but we can issue a QFE for the MSIs that we send out. So it's a servicibility issue.

No comments:

Post a Comment