SQL Management Studio 2008 R2 Express – 1603

If you are attempting to install the SQL Management Studio 2008 R2 Express for x64 on a Windows 7 system you might have quite a few installation errors. One that was consistently bugging me was a generic 1603 from the trin_aide_cpu32_1.log. This indicated a failure for the VSTA modules. The failure from the above log looked like this;

11/09/11 13:50:08 DDSet_Error: The Commandline ‘”C:\Windows\Microsoft.NET\Framework\v3.5\addinutil.exe” -PipelineRoot:”C:\Program Files (x86)\Common Files\Microsoft Shared\VSTA\Pipeline\.” -Rebuild -Silent’ returned non-zero value: -1073741819.

Running the command from an elevated command-prompt revealed this;

C:\Windows\system32>”C:\Windows\Microsoft.NET\Framework\v3.5\addinutil.exe” -Pip
elineRoot:”C:\Program Files (x86)\Common Files\Microsoft Shared\VSTA\Pipeline\.”
-Rebuild -Silent
Finished updating cache

For some reason – the above was considered a failure (due to its exit code) and stopped the installation from progressing. Reading a thread in the forums regarding a similar error (but not identical) one possibility that presented itself was to remove the custom action all together. 

Reviewing the folder x64\setup – you can see the below content;

image

Trin_aide.msi is the installation-file in question and running it manually does not resolve the issue. Use InstEd to open the file and verify the actions in the table InstallExecuteSequence – normally it’s a good idea to sort that specific table after the sequence column – as it gives you an overview in what order the actions take place.

The following steps relate to our problem;

image

image

You can see the sequence number to the right. The yellow color indicates that the row was removed within an applied MST-file. InstEd (as opposed to Orca) allows you to create a new MST and will show the differences between additions and removals.

Installing the trin_aide.msi with the newly created MST-file resolves the problem – once the file has been installed the Management Studio setup will only verify that all resources are in place and simply bypass the installation altogether.