Friday, November 18, 2005

Uninstalling Yukon CTPs

OK, I realize that this can't be a perfect world, but why MS can't make a simple uninstaller that actually does what it's supposed to is beyond me. I have uninstalled Yukon Sept CTP on several boxes and always in the exact same order. Sometimes it works, sometimes it doesn't. Whenever it doesn't work, it leaves you unable to install RTM.
The usual fix for this is to reinstall the CTP, and uninstall it again. This for some reason manages to uninstall all the pieces that were left behind before. And of course, RTM doesn't provide an uninstall wizard so you can't use that.

One problem I recently ran across was that I wasn't able to install RTM, or reinstall CTP. The install for CTP said it had incompatible components and couldn't install. But the uninstall wizard said that there were no components to clean up. So now there's nothing left to do but uninstall manually.

But how do you know what to uninstall? The answer came to me from Donald Farmer at MS.

When you get this situation, check the log file under C:\Program Files\Microsoft SQL Server\90\Setup Bootstrap\LOG\Files
What you want is the *_Core.log. They should all have pretty much the same info in them as the same components are probably failing all the time.



Reading the log, you will find a reference to the CLSID (a guid) of the component that setup “thinks” is installed.

Here's a clip from mine.
Product "{982DB00A-9C4E-436B-8707-18E113BAA44C}" versioned 9.00.951 is not compatible with current builds of SQL Server.Expected at least version: 9.00.1399.06
The Product Name is ""
Product "{90032DD0-ABEE-4424-AC1E-B076BDD4E350}" versioned 9.00.852 is not compatible with current builds of SQL Server.Expected at least version: 9.00.1399.06
The Product Name is ""
Loaded DLL:C:\WINDOWS\system32\msi.dll Version:3.1.4000.2435
Error: Action "PerformSCCAction2" threw an exception during execution.
Return Code: 70032



Copy that guid to clipboard, search for it in the registry and purge the registry of every reference to it. Just highlight that long GUID inside the curly brackets, and you should be ok. I included the brackets in mine, but I haven't tested without it... though again, it should be ok.

I've seen one instance where this didn't clear it up either. It left a bunch of .manifest files in there I think. I'd have to check to be sure, but just delete everything in that same log folder and try again. That should work for you this time.

In the future, I sincerely hope that instead of just doing a check for incompatible components, they actually delete the entries as well. That would be really helpful.

About Me

My Photo
Sean McCown
I am a Contributing Editor for InfoWorld Magazine, and a frequent contributor to SQLServerCentral.com as well as SSWUG.org. I live with my wife and 3 kids, and have practiced and taught Kenpo for 22yrs now.
View my complete profile

Labels

Blogumulus by Roy Tanck and Amanda Fazani

Page Views