February 10, 2011

Bloody Microsoft!!!

Yes, Bloody Microsoft yet again.  I want to know to whom do I make my invoice out to.

We had a situation with one of my father’s laptops.  The DVD drive mysteriously stopped working a week or so ago.  Well, it could have been longer, but we noticed this then.   The machine is a Toshiba Satellite L300D running Windows XP Professional (it came with Windows Vista Home Premium, but after figuring out how to slipstream service pack 3 and SATA drivers, I soon fixed that).  It had been running great, except now all a sudden, no drive letter was being allocated for the DVD drive.

All we could gleam out of the system was the very non-descript error number 41.  What’s 41 now, one less than the meaning of life?  On to the oracle^W^WGoogle… and apparently Microsoft blame cabling or hardware.  Ohh wonderful.  Okay, off we trundle to buy an external USB DVD burner.  Actually, we decided to buy two, the Lemote systems here do not have CD-ROM drives, and it would be handy for them.  (And I’ve already tested both on Linux reading DVDs, and burned a CD on one of them using K3B.  Ergo, they both work.)

Plug it into the affected laptop, lo and behold, it’s apparently “not working” either for the same reason.  We plug the drive into another Windows XP laptop, working no worries.  Okay, the drive is brand new out of the box!  The only thing common to the two drives is the PCI bus (or is it PCIe, not sure), which would mean a dying laptop.  Okay, let’s prove that it’s not the hardware.

I rummage around for a LiveCD I can boot up that will reasonably test the system.  Ideally I wanted something with a full desktop as it’d put more stress on the DVD drive.  Normally I download minimal Gentoo LiveCDs, but late last year I had downloaded Fedora Core 13 AMD64 for work purposes (I was putting together a firmware build kit, initially using Gentoo/Prefix, and needed to test it on the same OS that they were using).  The L300D runs a AMD Turion X2 CPU (AMD64 architecture).  You beauty, that’ll do.

We stick it in, hit F12 at the BIOS prompt, and select the DVD drive (it sees it).  A minute passes, and I’m staring at the KDE desktop.  The DVD drive works.  Open up a shell, and sure enough, /dev/sr1 is there lurking on USB, and it too works.  So it’s not the hardware.

Okay, so it’s something common to both, but it’s not the hardware.  Disk controller drivers?  Nope, one’s USB storage, the other is either SATA or IDE (can’t remember which).  CD-ROM device driver?  Maybe.  On we search…

Microsoft put out a few tools for “fixing” these problems that cropped up.  One is the automated tool on KB982116.  I run it, no luck, the problem still persists.  I try booting up the Windows XP CD and entering the Recovery console.  In Windows 2000 you could tell the setup tool to go and copy over the original OS files again.  No such luck with Windows XP.  Aside from re-loading the boot sector, it can’t do much at all, so no help.

I had already spent 4 hours fixing this… AU$128 down the drain in labour alone.  My father continued the battle, trying yet more tools.  There’s big money in fixing the shite that goes on with this proprietary mess, and I fear if Microsoft ever gets their act together a big portion of the IT industry will come crashing down as a result.

Today, my father doing further searching managed to find this exerpt on the KB982116 page:

Windows XP

  1. Click Start, and then click Run.
  2. In the Open box, type regedit, and then click OK.
  3. In the navigation pane, locate and then click the following registry subkey:
  4. In the right pane, click UpperFilters.Note You may also see an UpperFilters.bak registry entry. You do not have to remove that entry. Click UpperFilters only. If you do not see the UpperFilters registry entry, you still might have to remove the LowerFilters registry entry. To do this, go to step 7.
  5. On the Edit menu, click Delete.
  6. When you are prompted to confirm the deletion, click Yes.
  7. In the right pane, click LowerFilters.Note If you do not see the LowerFilters registry entry, unfortunately this content cannot help you any further. Go to the “Next Steps” section for information about how you can find more solutions or more help on the Microsoft Web site.
  8. On the Edit menu, click Delete.
  9. When you are prompted to confirm the deletion, click Yes.
  10. Exit Registry Editor.
  11. Restart the computer.

Of course, how stupid of me!  Yes, of course it’s HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E965-E325-11CE-BFC1-08002BE10318}.  Every computer user knows this…even the beginners!  That’s why the automated tool didn’t bother to even tell us about it, let alone do the above steps, because every computer knows about this instinctively!

The computer came very bloody close to getting a lesson in the order of the penguin with a liberal dosage of virtualisation.  I think that still may be on the cards, because we are both getting fed up with it.