I would like to install an SQL Server Express Instance as part of the setup and not as a prerequisite so that I can uninstall the SQL Server Instance when the application is uninstalled.
To do so I need to call the SQL Express Setup.exe with the appropriate arguments.
Now my questions:
- Where would I place this Setup.exe call to install and uninstall so that it does not interfere with the normal MSI setup. (I read in the documentation that I cannot use MSI calls everywhere in the script and the SQL Express Setup.exe uses MSI to install its components. Therefore I am not sure.)
- When I upgrade the application the documentation says that InstallAware will do an Uninstall and then an Install. Of course, at this point it would not make sense to uninstall the SQL Server Express instance and immediately install it again. How can I handle that?
- When I patch the application I can use the BUILDMODE variable to skip the SQL Server Express install and uninstall parts, right?
In summary I would like to do the following:
Install -> Install SQL Server Express Instance
Maintenance, Upgrade, Patch -> Leave SQL Server Express Instance alone
Uninstall -> Uninstall SQL Server Express Instance as well
Is this possible?
Peter
External Install and Upgrades
-
MichaelNesmith
- Posts: 3452
- Joined: Thu Dec 22, 2005 7:17 pm
- Contact:
Note: You will need to use the MSIcode view for everything below.
Just cut the code that installs SQL Server from the prereqs section and paste it into your setup section. The SQL Server installation will happen immediately when it is called (it is not an MSI call, but a plug-in call).Where would I place this Setup.exe call to install and uninstall so that it does not interfere with the normal MSI setup. (I read in the documentation that I cannot use MSI calls everywhere in the script and the SQL Express Setup.exe uses MSI to install its components. Therefore I am not sure.)
Only your application files and registry settings are uninstalled. Any prereqs will not be uninstalled/reinstalled.When I upgrade the application the documentation says that InstallAware will do an Uninstall and then an Install. Of course, at this point it would not make sense to uninstall the SQL Server Express instance and immediately install it again. How can I handle that?
Absolutely.When I patch the application I can use the BUILDMODE variable to skip the SQL Server Express install and uninstall parts, right?
For this you will need to use either Run Program or (Un)Install MSI Setup to uninstall the instance of SQL Express manually.Uninstall -> Uninstall SQL Server Express Instance as well
Michael Nesmith
Install[b]Aware[/b]
[i]Home of The Next Generation MSI Installer[/i]
Get your free copy today - http://www.installaware.com/
Install[b]Aware[/b]
[i]Home of The Next Generation MSI Installer[/i]
Get your free copy today - http://www.installaware.com/
Thanks for the info!
One point is not clear to me:
- How can I avoid this Run Program call when the user installs an upgrade of my application? (As said: The documentation states that during an upgrade InstallAware performs an Uninstall first and then an Install. During this process I do not want to uninstall and reinstall SQL Express.)
BTW, could I capture the uninstall progress of SQL Express? Or could I simulate this - maybe with a timer while waiting for the uninstall of SQL Express to finish? (I saw that (Un)Install MSI Setup supports this. But SQL Express has an EXE and installs multiple MSIs internally.)
Peter
One point is not clear to me:
- Ok, where do I place the Run Program in the script to uninstall SQL Server Express without interfering with the normal MSI uninstall process?Quote: Uninstall -> Uninstall SQL Server Express Instance as well
For this you will need to use either Run Program or (Un)Install MSI Setup to uninstall the instance of SQL Express manually.
- How can I avoid this Run Program call when the user installs an upgrade of my application? (As said: The documentation states that during an upgrade InstallAware performs an Uninstall first and then an Install. During this process I do not want to uninstall and reinstall SQL Express.)
BTW, could I capture the uninstall progress of SQL Express? Or could I simulate this - maybe with a timer while waiting for the uninstall of SQL Express to finish? (I saw that (Un)Install MSI Setup supports this. But SQL Express has an EXE and installs multiple MSIs internally.)
Peter
-
MichaelNesmith
- Posts: 3452
- Joined: Thu Dec 22, 2005 7:17 pm
- Contact:
Somewhere above Apply Uninstall.- Ok, where do I place the Run Program in the script to uninstall SQL Server Express without interfering with the normal MSI uninstall process?
This won't interfere with your normal MSI uninstall. See "Setup Commands Preceding Apply Uninstall" for details on how/why.How can I avoid this Run Program call when the user installs an upgrade of my application? (As said: The documentation states that during an upgrade InstallAware performs an Uninstall first and then an Install. During this process I do not want to uninstall and reinstall SQL Express.)
If you can use (Un)Install MSI Setup, yes. If not, set PROGRESSMODE to MARQUEE:BTW, could I capture the uninstall progress of SQL Express? Or could I simulate this - maybe with a timer while waiting for the uninstall of SQL Express to finish? (I saw that (Un)Install MSI Setup supports this. But SQL Express has an EXE and installs multiple MSIs internally.)
PROGRESSMODE: Initially an empty string. If set to MARQUEE, the standard ProgressBar control will move like a marquee, ideal for use with tasks whose completion times are indeterminate.
Michael Nesmith
Install[b]Aware[/b]
[i]Home of The Next Generation MSI Installer[/i]
Get your free copy today - http://www.installaware.com/
Install[b]Aware[/b]
[i]Home of The Next Generation MSI Installer[/i]
Get your free copy today - http://www.installaware.com/
You can call (Un)Install MSI Setup on GUID {2AFFFDD7-ED85-4A90-8C52-5DA9EBDC9B8F} which is the SQL Express GUID, and Uninstall it from the target machine.
Panagiotis Kefalidis
Software Design Team Lead
\"In order to succeed, your desire for success should be greater than your fear of failure\"
Install[b]Aware[/b] Software Corporation
Software Design Team Lead
\"In order to succeed, your desire for success should be greater than your fear of failure\"
Install[b]Aware[/b] Software Corporation

