Saturday, January 27, 2007

How an Algebra failure helped repair a Windows bug

The Lesson Begins

So a few days ago, Alvis lays two installation CD's on our home pc desk.

One is a French language software set, the other is a multi-media algebra tutorial software program for kids.

Alvis explained to me she might want to take French in high-school and the algebra one might come in useful for her math classes.

She and Lavie found them in the "budget" software rack at the local office supply store. You know, two for ten dollars? Yeah, those.

OK.

So tonight I promised her I would go ahead and install them.

I started with the multimedia algebra disk.

Now, it came with great big logo's for NetZero on it. That had me kinda concerned as I didn't want to end up installing a NetZero dialup program along with it. (Shudders). Nothing about NetZero, but it looked to be a bundled installation and I wasn't interested in adding that to my system.

So I decided to keep an eye on the installation routine.

Trouble Looms

I went to fire-up my old copy of InstallWatchPro. Only it wouldn't start. Hmmm. It is a program that I used to use to monitor what changes occur during a software application installation (files, registry, etc.). It takes a before and after snapshot and compares the results. That way, I could quickly figure out what what going on during installation.

So after several false-starts, I uninstalled it. Then downloaded a fresh setup file. Only it keeps getting stuck during the setup process. Attempts to figure out where it was locking up failed with ProcessExplorer and ProcessMonitor. Hmmm. Must not be compatible with XP?

So I gave up on that and decided to move on. I could have used an old copy of What Changed, but I was thinking that only monitored the registry (later I remembered it covers files as well) but was so frustrated at this point, I skipped it. I mean, hey, I eat network problems and malware for snacks at work, how hard should installing a simple kid's math program application be?

I'm Failing in Algebra!

So I went ahead to plunge in to install the software anyway. Except it stubbornly refused to run the setup file.

Oh No!

So I'm watching it in ProcessExplorer, and the setup.exe file kicks off a process called Install.exe which is described as pig32. Then it, in turn, runs a sub-process ntvdm.exe. Come to find out that this is a Microsoft process that belongs to the Windows 16-bit Virtual Machine. It lets 16-bit programs run on a 32-bit system. Hmm.

So now I am finding that I've attempted to install two programs and both refuse to install. Has my system gone bonkers? Did I somehow corrupt my system? What is going on!!!!

So I wonder if maybe it's an issue with my Windows user profile. I go to log-off my profile and onto Lavie's, only I don't have the "Log-off" button on my Start Menu. Ooops! Forgot. I've been missing that for months and haven't been able to get it restored.

So I shut down and restart and log onto Lavie's profile. Nope. Neither app will install. Hmmm. Am I looking at an XP reload?

? parle vu frances, XP ?

I go ahead and download Mozilla's Sunbird application to see if that will work. Yep. It installs just fine with no issues. OK. Whew. Next I take a chance and try to install Alvis's French language program. It goes on just fine.

I had a brief scare when it looked like the installation froze at 100% and wouldn't "finish" but I finally caught another app listed in the task bar. Turns out that the "register this app" window had been placed to appear directly behind and totally obscured by the installation wizard window. Once I brought that one forward and cleared it, the install wizard finished. Who's idea was that?

Oui!

So I break out Lavie's laptop and try to install the algebra program on a different system. Nope. Same results. Now I think I'm getting somewhere with this program...definitely nowhere!

Alvis is upset. She takes the CD case and points out in the fine print where it says under the system requirements: "Microsoft Windows 98SE or higher: XP compatible"

"Right here! It says so! I checked!" she insists. She is so clever. How many pre-teens check the fine-print before they buy software? That's my girl!

I, in my pride am also beginning to look at the work "compatible" that follows the "XP."

So, I leave it there for now. It isn't going on and no attempts, tricks, hacks or otherwise on my part look like they are going to get it going.

I suspect we have a case where this is really a Windows 98 app that isn't fully programmed for XP. I may use my old Windows 98 OS disk and do a Virtual PC installation of it, just to see if I can get it working under Windows 98. Will let you know.

Mid-term Grades

So, for now Algebra gets a "Fail" for refusing to install under two XP systems and Claus passes Troubleshooting 101 for getting the French software on and not falling for the trick in doing a system reinstall because both apps were being a little bit wonky.

Extra Credit

Well...back to the missing "Log-off" button on my start menu.

I don't know when I lost it, but I haven't seen it around for a very long time.

So, not willing to take off my troubleshooter's hat just yet I turned my attention to restoring it. It's a pain to reboot to compare events under different user profiles on my system.

Normally I would just go to the advanced settings for the Start Menu properties and enable it, but that option isn't showing up. Hmm. Mysteriously, it is there under Lavie and Alvis's user profile Start menus....Hmm. Obviously not a global machine issue. Clue #1.

So I fire up good-old TweakUI for XP. There is a setting tweak listed there that will allow me to add it back. Only it doesn't work either. When I try to apply that setting change, TweakUI just hangs. All the others seem to work fine. Clue #2.

So I do some searches on Google. All the tips seem to not apply to me. I finally track down an XP registry setting for this: Remove Log Off from the Start Menu. This tweak allows you to remove the Log Off [Username] option from the Start menu.

HKEY_CURRENT_USER\ Software\ Microsoft\ Windows\ CurrentVersion\ Policies\ Explorer
A value of 1 is enabled, 0 is disabled.

Only when I go and check mine, it had that value listed as "NoLogoff"=hex:00,00,00,00"

That doesn't match. Clue #3.

So I export a copy of the registry item for safety, and then delete the key and rebuild it as a Reg_DWORD type with the value set to "0" just like the example. I restart...and.....nothing. It's still missing.

So I do some more searching....I find a Kelly's Korner item that has a registry key fix for this issue: #267 on the left-hand column. So I check it out and it looks just like what I did. I reboot. Still nothing. Hmm. Clue #4.

This is XP Home so I don't have the handy-dandy gpedit.msc or secpol.msc feature that I do on my XP Pro.

So I go back and carefully look at my exported .reg file.

This time I notice a registry key "StartMenuLogoff"=dword:00000001" Well, I didn't see that before, but obviously it was there. Wait! It says "StartMenuLogoff". And the "1" value means it's enabled, so it should be putting my Logoff button on the Start Menu! So why isn't it working? Clue #5 (The Biggie)

Wait. (Brain kicks on.) What exactly does this registry key mean?

I do some more searching and find this fantastic blog post page Windows XP Embedded Team: Tweaking settings – Part2.

Description: Removes the "Logoff" button from the Start menu and prevents users from adding the Logoff button to the Start menu.
Registry Value: "StartMenuLogoff"

Ah! Tricky Microsoft!

I dove back into the registry and changed the value to "0" and reset my system.

Magna Cum Laude!

When I logged back onto my profile. There was my beautiful Logoff button, restored to it rightful place!

How that registry key got set and the other one corrupted from a D_Word to a hex type I don't know.

But it's fixed now. Finally.

TweakUI kept locking up when I tried to make the setting change there, because the registry key it was trying to change didn't exist in the correct format.

And once I fixed it, the changes still didn't apply as I had a higher-control registry setting still overriding it from appearing.

I could have also just compared Lavie's registry key settings with mine and probably found the key faster since her's was appearing and mine wasn't--but that I didn't consider that option until after I had fixed the issue.

The Windows XP Embedded Team: Tweaking settings – Part2 post actually has quite a few other interesting "hidden" registry interface tweaks listed. Might be handy to review them.

So even though I failed Algebra for now (pending a Virtual PC Win98 installation attempt in the near future), I ended up fixing a real troubleshooting test that has been my nemesis for a while.

Sweet!

--Claus

PS...in the process of looking for an alternative to that bombed out "InstallWatchPro" application, I came across a new one called Total Uninstall by Martau. It looks be be freshly maintained and is compatible with Windows - 98SE, ME, NT, 2000, XP, 2003. Screenshots look very nice and reviews have been quite positive. I haven't installed it yet to play with, and it is only functional for 30 days without purchase. But the prices look very reasonable. Version 2 was freeware, and can still be found on some download hosts. This looks like it could be a very polished program! I will let you know what I think once I play with it. -CV

1 comment:

Michael said...

I hear you, brother. My wife lost her entire windows taskbar - no start button, no nothing! I tried several tips from group discussion boards to no avail. I finally had to set up another account in safe mode. That got the task bar back, and I was able to keep it when I signed off the new account. After I was confident the taskbar was indeed repaired, I deleted the new account and I was back in business. My wife will never know all the stuff I had to do to keep her PC in top condition!