Thoughts about setup and deployment issues, WiX, XNA, the .NET Framework and Visual Studio
All postings are provided AS IS with no warranties, and confer no rights. Additionally, views expressed herein are my own and not those of my employer, Microsoft.
I got a question from a customer asking for direct download locations for each of the VS 2005 Express Edition beta 2 packages. I replied to that customer with a blog post previously posted by a colleague of mine here. But as I thought about this question more, I realized that it is probably possible to figure out this information from the publicly available setup packages for the Express Edition beta 2 versions with a little bit of ingenuity and knowledge of setup technologies. So I decided to try to figure out the download locations myself without using any Microsoft internal web sites or discussion aliases as part of my data gathering.
Here is how I proceeded:
The only remaining trick is how to translate from the "fwlink" to the actual location on the Microsoft download center. Microsoft uses the concept of an "fwlink" (or forwarding link) to provide a public link that can be changed to a new location via some server-side settings later on. This is useful to allow users or other Microsoft products to link to locations and always have their links point to the most up-to-date versions of documents or products, even after other products have shipped with these links embedded in the product code or documentation. I have to admit I'm not much of an expert on networking, so the exact method of translating this is left an exercise for the reader :-) If anyone has an easy way to do this, please post a comment and I'll give it a try.
This can also be caused from something as simple as a pending Windows/MicrosoftUpdate restart entry. If there's an especially sensitive situation (i.e. anything 64-bit or anything Vista+,) you'll get this right out of the gate. I just got and found this page which, ironically, I trust, as it's where I found the trusty .NETfx Cleanup Utility! I have a pending restart and also tried installing C++ 2008 security updates (successfully) at last boot. However, trying to implement the actual Visual Studio myself with similar updates hanging in the balance + the actual updates either "confused" my OS or, I simply suspect, messed with the order of operations. I've seen this before, as I admittedly stack-up pending-restart entries and suffer the brunt of it. It's like registry cleaners, just don't do it. Same goes for pending restarts. Just my 2 cents, but take it from someone who's learned the hard way! BTW, my solution was to install the express C# (with much chagrin.)