Nine weeks ago, I wrote about a problem I had with my preferred web browser, Chrome. Simply put, it would not start up on a Windows 7 system. Double clicking its icon produced no result at all. I poked around, found an error message log, took a couple guesses at a solution and got lucky.
On the upside, comments to that prior blog show that the solution I stumbled into has helped others.
I also used the occasion to get on my soapbox, griping about a pet peeve: that Windows users can't, even after all these many years, backup their installed applications. Pretty colored boxes are coming in Windows 8, but backing up software is not on Microsoft's To Do list. To paraphrase an old song: uninstall/re-install is just another word for nothing can be backed up.
This gripe led me to praise portable Windows software, such as the applications offered at portableapps.com which can be backed up. And this, in turn, led to the critical issue (not that I knew it at the time). A big reason that installed Windows software can't be backed up is that it updates the registry, something portable software does not do.
Or so I thought.
The prior blog got the attention of the right people at Google. Beats me how, stats show that my mother and I are pretty much the only ones reading this blog (Defensive Computing is boring, I get it). Nonetheless, I was lucky enough to be put in contact with someone at Google who works on the Chrome browser.
We went back and forth trying to figure out what was different about my computer. After all, Chrome works fine on millions of Windows 7 machines. The cause was either sun spots, or there was something a tad out of the ordinary about my PC.
He was thorough, collecting data and asking questions about the system with the problem. I was forced to think of everything that was slightly out of the mainstream. Guess after guess was a dead end. Then, I mentioned something, just in passing, that turned out to be critical.
I had used the portable version of Chrome.
Portable Chrome was not on my suspect list because of what I said earlier, portable applications are not supposed to update the Windows registry.
Well, this one did.*
Long story short, Portable Chrome was writing its version number into a location in the registry owned by Google's Chrome. Not only should it not write to the registry at all, it also should not have updated registry keys used by another application.
Had the portable version of Chrome been the same version/release as the normally installed copy, there would not have been a problem, even with its writing to the registry. But, in my case, the portable copy of the browser was a couple releases old.
Portable Chrome is the only application I've come across at portableapps.com, that does not self-update in a manner consistent with its non-portable sibling. It needs to be manually updated**, which, because it's a bit of a pain, means that I typically have a somewhat recent version hanging around, but hardly ever, is it the most recent.
I didn't suspect Portable Chrome because for many years, I have happily used the portable version of Firefox, alongside a normally installed copy of the browser (the only limitation being that they can't run concurrently). Ditto for Thunderbird.
The Defensive Computing lesson here is clear, don't run both the portable and normally installed Chrome on the same system. At least for the time being.
One piece of good news is that the registry conflict is limited to a single Windows user. So, for example, Windows user1 can have a normal copy of Chrome and Windows user2 can run an ancient edition of Portable Chrome without causing a problem.
Most Windows users probably use a single Windows account all the time. I never do. Every Windows system I work on has an Administrative user (MichaelAdmin for example) and a restricted user (such as MichaelRestricted) with the latter being used almost all the time.
I mention this because regular Chrome works a bit differently from the majority of Windows software, in that it installs itself on a per-user basis rather than system-wide. As a result, Windows user1 can install Chrome and Windows user2 won't see it. If Windows user2 later installs Chrome, their copy is totally independent of user1's copy.
By and large, this strikes me as a good thing. However, the more normal mode of operation is also supported. For instructions, see Install Chrome for all user accounts. The only thing that's shared though, is the browser code. Every OS user gets their own bookmarks, extensions, themes and the like.
A system wide installation of Chrome is also supported on OS X.
Going forward, Google is looking into revising their logic to make Chrome more resilient to this sort of registry corruption. Also, someone from Google was going to contact the folks at portableapps.com.
*Someone identifying themselves as Rob Egan, commented on the prior posting that his problem also started "after running the portable version of chrome."
**There is a PortableApps.com app, that handles software updates for all software from their site. It is optional and I have not been using it. This may explain why other users of the Portable Chrome browser don't have a problem, the PortableApps.com app probably does a good job keeping their software up to date.