Thursday, January 26, 2012

Silverlight 5 Tools installation issue



We recently updated our grand solution to Silverlight 5. My neighbour colleague was responsible for the upgrade, and he got through it without any major hickups.

So, now all I needed to do was to refresh my workspace code, update my machine to Silverlight 5 tools and fly off to the no-compilation-error heaven.

"Not so fast there pretty boy", Microsoft's Silverlight 5 Tools installer quickly told me.
Well, actually, the exact words were: "Setup has detected that Visual Studio 2010 Service Pack 1 is not installed, which is required to install the following product", but you get the point.

So, just install the SP1 already right? Problem is, it was already installed, and had been so for the last 6 months or so. My setup was:
- Visual Studio 2010 Premium, with SP1 applied
- Windows 7 Enterprise
- Beefy 64-bit system with Intel i7 cpu and 12 gigs of sweet sweet RAM.

I tried everything, up to the point where I uninstalled the SP1 and reapplied it. Still same error. Darn.

After two days of digging, I found this post where someone had a similar error with the RC version. Apparently, the tools-setup is just a selfextracting zip which can be unpacked. Great, so I could unpack this thing, skip the stupid installation wrapper and install the parts individually. (parts = dev runtime, VS tools, RIA services)

Or so I thought. Turns out, the wrapper installation actually did something as well besides just kicking of other setup packages because although I could now install the parts, the VS solution couldn't load.

So, I needed a way to run the entire installation, but just skip the small part where it checks (incorrectly) for VS 2010 SP1. The answer lays in the magic file called ParameterInfo.xml

This file (inside the zipped package) determines what to check before running the installation. It's a simple to read and understand xml file, so I could easily pinpoint the xml-elements that tried to check for SP1, remove them, and then run the installation package as a whole (still unpacked though).

Success!

Thnx MSFT, I'll be sending you guys an invoice at the end of this month charging the hours I needed to spend on this.

/ jon