View Full Version : MSDE Install Problems

01-08-2003, 10:08 AM
Trying to include MSDE for installation on a computer that may or may not have MSDE already installed. Using MSDE Merge Modules with default instance, my test for MSDE's existence never seems to be kicked off. It always fails with the error "The instance name specified is invalid" when MSDE has been preinstalled on the computer. If the computer does not have MSDE, the installation runs correctly.

If I specify an instance the computer will only be able to run one instance of SQL Server, correct?

My goal is to have MSDE install only if it is not on the computer at install time. I also need to restore databases, but will concern myself with that once the installation is working correctly.

Any suggestions?

01-08-2003, 10:57 AM
I don't think that is possible. All those MSDE merge modules are ones created by Microsoft. These modules have 6 or 7 properties that can be set and we just expose them through the wizard. These modules perform about 150 custom actions so it's hard to tell what exactly it does at runtime.

My advice would be to use your own Instance name instead of the default. That way, if MSDE is already installed you won't get the Instance conflict errors. These modules have been around for a while now and is the standard method of redistributing MSDE 2000. It's also the microsoft recomended method. So I put my trust in microsoft and assume they handle the case of installing MSDE over an existing install (or deciding not to re-install) properly.

01-22-2003, 04:35 PM
I have set up an InstallShield project which includes MSDE merge modules only in one Feature set. When installing, even if I do not select a setup type which contains this Feature set, the MSDE merge modules are still attempting to install, resulting in the error, "The instance name specified is invalid".

Why, if all the merge modules are not part of any installed Feature set, would the install attempt to install MSDE?

J Dolphin
Intelliquip, LLC

01-22-2003, 05:57 PM
The MSDE merge modules consist of files and custom actions. The files will either install or not install based on which feature gets installed. This is because the msi matches them up with the feature. Custom Actions however will always run unless they are specifically conditioned (in the module itself).

To make sure the Custom Actions are what's causing the problem here, run the following VBScript as a Custom Action after the "Ready to install" dialog:

MsgBox Session.FeatureRequestState("MSDE2000Feature")

At runtime if this message box shows 3, that means this feature is getting installed (despite what you select in Setup Types dialog). If this is the case we can look in to it. If it returns anything else then that means the Custom Actions in the modules are performing part of the MSDE install which is causing the problem.