Announcing the Windows Live Suite on the same day as the new iPod touch crafted by God himself might not have been the brightest idea, but Windows Live still managed to get some attention by the usual suspects. The hype has been around this unified installer which not surprisingly does exactly what the label says and nothing more. I decided to give it a whirl but was surprised by not what it did, but how.
For those that haven’t tried already, you point your browser to http://get.live.com/WL/ and you will come across this splash screen. At first, it might look like a silly ‘sign-up’ form which you must complete to gain access to the downloads, but in fact you’re asked to choose what you want to install in the suite. I thought to myself, “oh that’s neat. I’m choosing what I want to install on a web page.” Then I pondered, “how does this actually work?”
After pressing “Install”, you’re asked to download the installer’s executable. At this point, I started wondering if this executable was somehow dynamically generated or prepackaged to install only the things I selected, nevertheless I hyper-clicked all the next buttons until it eventually started installing. Not surprisingly, it only downloaded and installed the applications I chose. Whatever it did, it worked.
Unsatisfied with “it just works”, I decided to investigate further. I first analyzed the HTML to see what effect it had on the download link when I selected the different options, but no luck there, it pointed to the same “WLinstaller.exe”. To prove a point, I then downloaded the executable without going through the form to compare it with the other executable I already, it was the same. So if the executable didn’t change, then it can only be the website.
Just to make sure, I even ran Process Monitor on the process to check out its file system requests.
Even though I had already known about the cookies, it still shocked me a little to see it actually query my file system first to find any cookies for “live.com”, then start accessing those cookies to find the relevant information. Same applies for Firefox, which I was using at the time. In fact, it’s even more complicated for Firefox because it first has to find my profiles, then shift through megabytes of cookies in the single repository to find the “live.com” one.
Whilst this might seem like a lot of work just to check what I want to install, I think it’s a neat idea with a lot of indirect potential. A few that popped into my mind quickly included:
- Third party applications or bundles – assuming the installer simply downloads from the Microsoft server anything matching the supplied GUIDs, you could easily deliver additional applications or service beyond those by Microsoft without bundling them into the installer
- Universal installer – this installer will require less if any maintenance since it can be suited to download any application, any version, any bundle by simply changing GUIDs in the browser
- Special promotions – imagine if you have accessed a promotional website which offered Live Messenger freebies, by simply adding a code to the cookie, only you will be given access to download these exclusive freebies
Someone suggested to me this is not new and in fact Adobe may have done this in the past with the Acrobat download bundles, however I think they changed the download URL to a whole new package with or without the bundle depended on your decision, instead of the truly unified installer in this case.
And also if you’re wondering what happens if you don’t have the cookies or have cookies disabled, then you’ll simply be offered a different installation experience where you select which products you’d like to install (left).
P.S. If you’re running X64 and questioning the purpose of life, then check out Rafael’s hack to get Windows Live Suite working on X64.