Worse, it happens frequently enough that a good solid game of Battlefield: Vietnam guarantees it happening at least twice.
When it happened in Windows alone, I went into the Device Manager and looked, and there was indeed a USB Device in the Human Interface category that had the deadly yellow question mark on it. However, when I unplugged the keyboard and reconnected it, causing it to come back, that device was still there - and when it happened another time, Uninstalling that device and then performing a scan didn't make things better. It looks like the keyboard itself is actually crashing.
This happened three times before I managed to install any software into my Windows XP image, so I don't think it's something I did. Bugger.
Update: Well, hm. I moved the keyboard to a powered USB hub so as to avoid having to stand up and fumble behind the iMac and scratch up its Shiny Plasticky Goodness every time this happened. This changed things slightly; every few times the glitch occurs, the unplug-replug-keyboard trick doesn't work, and can only be remedied by actually unplugging the hub. When this happens, though, Windows goes through its whole "Oooooh! New hardware, goody goody gumdrops, I get to make you reboot now!" routine (although it just puts up a nagging dialog, it doesn't force an immediate reboot, presumably since it's just a USB hub). The interesting thing though is that when I do reboot, it says it can't because the program 'AppleCDEject' is Not Responding.
Interesting. Presumably whatever bit o' software Apple uses to watch for that handy Eject button on the keyboard is tanking. I don't know if that's causal or symptomatic, though.
Update Update: On the advice of a colleague, I spent some time trying to figure out how to prevent AppleCDEject from loading at startup. It's not in Startup Items, nor is it obvious in the Services that are coming up (although I did gleefully kill off stuff like the Theme Manager and other useless frippery). As a test, though, I booted XP, went to the Process Manager and killed it manually, then gamed for two hours without a single keyboard error - so things are looking up. One place I haven't looked yet - there is a single 'Apple Drivers' service loading, I didn't carefully look to see if there are arguments to that service which might be telling it to load the AppleCDEject deal.
I should also try a non-Apple USB keyboard (gotta find one first) and then look to see if it loads.
Update Update Update: I still haven't checked to see if there are keys in the registry that govern the startup of the AppleCDEject program, but as a stopgap measure, I just moved the executable out of the C:\windows\system32\ directory into a temp dir, and it doesn't execute on startup. I notice that I still do get the occasional 'hiccup' in the USB drivers (loss of input, multiple BONGs, input comes back) but they seem to pass within five to ten seconds and the keyboard doesn't crash anymore - so it's still an improvement.
Posted by jbz at April 9, 2006 4:50 PM