Itís happened to everybody at some point you go to install a new application, and Windows tells you to reboot first. Or reboot after. Or it asks you to close out of every other application first. Why does it do that?
In todayís geek lesson weíll explain exactly why Windows can be so irritating with all this rebooting, and hopefully give you a better perspective into why things work this way.
So Why Are Installers Annoying?
The short answer is that most installers are annoying because they either arenít written very well, or they integrate too deep into Windows to be able to copy system files and start everything necessary without a reboot.
The problem is compounded because Windows applications often use DLL (dynamic link library) files that are shared between more than one application. Itís a nice idea, but when it comes to installing and uninstalling applications it can be irritating to need to reboot. The really sad thing is that many applications these days are completely self-contained and arenít replacing built-in Windows DLLs, but their installers still make you reboot.
Hereís a couple of instances where installers might be annoying:
- If the application youíre installing needs to copy new versions of files that are currently in use by another application, it will either prompt you to close all other applications, or it will make you reboot.
- If thereís a previous installation or Windows Update that has pending changes requiring a reboot, some installations will fail and ask you to reboot first.
- If the application you are installing has a plugin for another application, like an Explorer context menu addition, or a browser plugin, it will prompt you to reboot or close the other applications.
- Sometimes badly written installers will ask you to reboot because they donít start up the required services on their own.
Letís take a closer look at some of these instances, so you can fully understand whatís going on.
In-Use Files Need to be Copied on Reboot
If the application installer needs to copy some files but they are currently being used, or are system files in the case of Windows Update, it will utilize a Pending feature in Windows that allows an installer to specify that a file operation happens after a reboot, and before everything in Windows has started up.
The installer will write a key to the following location in the registry:
If youíve received an error saying that you need to reboot first, you can open up this key and youíll see all of the files that need to be replaced on the next reboot.
You probably do not want to mess with the contents of this key, or else things will quickly start to become weird. There are some very rare instances where this key doesnít get emptied even after multiple reboots, and you might have to wipe the contents of the keyóbut you should probably avoid doing that unless you are very certain.
Installation Already In Progress
Some installers wonít start up if thereís a current installation in progress, so they will check the following key to see if thereís an installation already happening:
I donít have a screenshot for this one, but you can get the idea from the name of the key.
Windows Update Makes You Reboot
If youíre getting a message saying that you canít install an application until you restart your computer, itís because of Windows Update requiring a forced reboot. So, for example, if youíre getting this error message:
Itís because you probably clicked Postpone when you saw this dialog pop up:
If you head into the registry, youíll see that thereís a RebootRequired key at this location in the registry:
Thereís a whole bunch of GUID values over on the right-hand side, and while they donít pertain to anything in the registry, the fact that they are there is what is triggering that message.
Technically you could probably export the contents of the key, install the application, and then put them back but it could break something, and rebooting isnít that painful is it?
So now youíve learned a little more about why application installers work the way they do. Is there anything else youíd like to know? Explain your frustrations in the comments, and weíll see if we canít shed some light on them.