Promit's Ventspace

November 10, 2010

Windows Installer: Worse Than I Thought

Filed under: Software Engineering — Promit @ 4:59 pm

I hate Windows Installer. I really hate it. So you have to understand, I was a little surprised to discover that it is actually worse than I thought.

I do not, generally speaking, have much of a problem with Microsoft or Windows. They’ve done a lot for me, I’ve done a few things for them, and it’s been good. However, my feelings about Windows are continuing to degrade from “generally decent” to “least unpleasant”. But that is a digression from the point at hand, which is a specific infuriating problem. Let me explain my machine’s hard drive setup:
* 60 GB SSD. This is for OS and ‘core’ software.
* 400 GB magnetic drive for ‘non-core’ software.
* 1 TB drive for personal data.
I figured that 60 GB would surely be plenty for the OS and small programs. The Windows folder now accounts for a mind boggling 25.7 GB of usage on that drive. I was wondering why.

Our culprits are apparently Installer and WinSxS. I’ll leave the latter for another time and dig into why Installer is so big.

As I’ve discussed in the past, Installer files (msi, msp) are essentially embedded database files that store everything that is required in order to install or uninstall a program. Notice the flip side of the coin here — the only way to uninstall (or repair for that matter) is to save the installer package. And these packages always get saved in the same spot, regardless of where you actually installed the program.

The short version is that if you have a small C drive but run lots of software, you will eventually run out of space even if all the software lives elsewhere. At this point I’m left to throw up my hands and ask the same thing I’ve asked many times before. What idiot was in charge of designing Windows Installer? The engineering here is slipshod and frankly embarrassing.

On the bright side, the solution to this problem is actually relatively straightforward. There’s nothing stopping you from moving the contents of Installer to another drive and creating a junction to fill in for it. Just like that, I can cross off 8 GB that definitely don’t need to be on my two-dollar-per-gigabyte SSD.

About these ads

3 Comments »

  1. winsxs is actually filled with hardlinks, but yes, windows installer sucks. a lot.

    Comment by fowl — November 10, 2010 @ 6:14 pm | Reply

  2. I wouldn’t say windows installer itself sucks, just how most people use it sucks.

    As for why that installer folder is so big. A really annoying change in windows 7 where the whole MSI file is cached there including any embeded cab files. So if you have a 1GB msi file, it is going to go into that folder.

    If the install is split into external cab files though it will just copy the small msi file over.

    Here is why they did it:

    http://blogs.msdn.com/b/heaths/archive/2009/02/02/changes-to-package-caching-in-windows-installer-5-0.aspx

    I believe it was just to stop a dialogue box showing up wrong when you uninstall something.

    Comment by Wil — January 20, 2011 @ 12:04 am | Reply

  3. I thought that uninformative, usually fatal error messages presented to the user for what are trivial reasons, such as moved or deleted shell folder (not needed by the application in question), were bad. And that the size of stripped down MSI packages that far exceeded the size of normal installation logs was bad. Or applications falling into a perpetual state of “needing repair” was bad. But it it is indeed worse.

    Copying an entire installation package just to get a message about the software publisher on screen? If that is not purest form of *bloat*, then I don’t know what is.

    But then again Microsoft is known for reading executable files in their entirety before executing them from network directories, or before displaying file properties (under win98se), just to compute the digital signature that nobody asked for. So I can’t say I’m surprised.

    Analysis of some failing MSI installers has revealed that they don’t actually do anything special, apart from copying files to the destination directory, registering them, and adding a couple more registry entries to mark them ‘installed’.

    Speaking of ugly UI. On one of my computers MSI installer GUI is always upscaled by about 25% including any bitmaps, when no standard application is.

    Inno Setup.

    Comment by j7n — November 4, 2014 @ 5:51 pm | Reply


RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

The Rubric Theme. Create a free website or blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.

Join 787 other followers

%d bloggers like this: