Getting hardware devices to cooperate with Windows has been an ongoing problem for support techs since Microsoft shipped Windows 1.0. Microsoft has bent over backwards with hardware vendors to try to make it easier for them to write new drivers. It has also tried to make it easier to deploy driver updates by shipping hundreds of drivers with Windows XP and adding a feature to Windows Update that checks your workstation's hardware and driver versions against a database to advise you when new drivers are available.
For all this effort, driver problems still exist. You must be very careful when updating or using XP drivers. Sometimes installing a new driver or using a driver Microsoft suggested can cause more problems than it fixes. In other cases, you may find that using a relatively ancient Windows 2000 driver can fix problems on your Windows XP system.
A practical example
Just to give you an idea about how drivers can drive you nutty with Windows XP, I'll explain the problems I had with Windows XP and a Dell Inspiron 7000 laptop. This particular laptop includes a DVD-ROM and DVD Decoder made by LuxSonor, the LS242. The laptop originally came with Windows 98 and shipped with a Windows 98 driver for the LuxSonor decoder.
I figured I would have a problem with the decoder when migrating to Windows XP because I had one when upgrading the laptop to Windows 2000. There were no drivers included with the Windows 2000 CD for the decoder. LuxSonor had been purchased by Cirrus Logic, which wasn't creating drivers for old LuxSonor products. The only way I was able to get the decoder to work with the laptop and Windows 2000 was by using some drivers supplied by Dell.
Sure enough, when upgrading the laptop to Windows XP, Windows XP's Setup complained about the LS242 decoder and the lack of XP support for it. Because finding Windows XP-specific drivers for this device was impossible, out of desperation I decided to use the Windows 2000 drivers. Windows XP further complained that the drivers weren't digitally signed, but it took them anyway. Windows XP didn't have problems with any other devices in the laptop, including the sound card.
After the installation finished, I tried to play a DVD in the laptop. The video played fine, but there was no sound. I knew there were no problems with the sound card because other sounds were playing fine through it, and everything had worked fine under Windows 2000.
I attempted to run Windows Update to apply other patches to Windows XP and discovered an update for the ESS sound card on the laptop. Thinking maybe there was a problem with the driver, version 7 of the ESS driver, I downloaded the offered driver. As before, other sounds worked fine, but there was still no sound with the DVD player.
While doing some research with Dell's Windows 2000 driver, I noticed that it included an ESS driver as well as a LuxSonor driver. That's when I decided that perhaps the newer Windows XP ESS drivers, version 7 that shipped with Windows XP and version 9 that was offered by Windows Update, were to blame.
Going through Device Manager, I deleted the Windows Update ESS driver and reinstalled another driver. Rather than using the offered Windows XP driver, I selected Have Disk and specified the Dell Windows 2000 driver. As with the LuxSonor driver, Windows XP complained about the driver not being signed and warned about the dire consequences of using unsigned drivers. Because the LuxSonor driver worked even though it was unsigned and the audio drivers weren't working anyway, I decided to try it.
Sure enough, after that everything worked. The Windows XP system sounds all worked fine, and so did the audio when playing a DVD. The older Windows 2000 drivers succeeded where the newer Windows XP drivers failed.
The moral to the story
During the upgrade process, Windows XP successfully detected the ESS and installed its own driver for it. Clearly, this driver didn't include the appropriate support to communicate with the old Windows 2000 LuxSonor driver. This turned a twenty-first-century DVD into a 1900's silent film, even though otherwise the sound worked perfectly in the laptop. Downgrading the ESS driver fixed the problem because this driver had the necessary LuxSonor support.
As you're deploying Windows XP across your organization, you'll invariably encounter hardware that doesn't work properly with Windows XP. Even if Windows XP doesn't include a driver for the hardware, don't panic. Follow these steps to try to get Windows XP to play nice with the device:
Check the system vendor's Web site
Unless the system vendor has gone out of business, or the system you're upgrading is older, the vendor may have drivers specific for the system. In my example, Dell provided Windows 2000 support but not Windows XP support for the Inspiron 7000.
Check the component manufacturer's Web site
If the system vendor doesn't provide support, you might be able to find support from the manufacturer of the component. OEMs are sometimes better at providing drivers for components than system vendors. In my example, LuxSonor had been purchased by Cirrus Logic, which wasn't supporting LuxSonor chipsets.
Check driver Web sites
Specialized Web sites such as DriverGuide provide pointers to drivers that people have found on the Internet. These drivers often originated from vendors or OEMs and were collected by users. These can be handy if vendors or OEMs have changed drivers or have stopped supporting a particular device.
Try Microsoft's drivers
I've ranked this lower on the list because, as I've said, oftentimes Microsoft's drivers cause more problems than they fix. For example, on my test system, Microsoft suggested upgrading a driver for an SMC wireless card included in the system. This caused the card to stop working entirely.
Try compatible Windows XP drivers
Often even though one manufacturer makes a component, sometimes a second manufacturer originally created the component and just resold it. This occurs often with sound cards, video cards, and modems. If you can find out the chipset surrounding the component, you may be able to get a driver from another vendor to work.
Try Windows 2000 drivers
Windows 2000 and Windows XP share the same basic driver architecture. Microsoft added a layer of security to drivers, reducing the likelihood that they've been hacked and guaranteeing that the drivers will work with XP. But if you don't have a Windows XP driver, sometimes a Windows 2000 driver will work, as shown in my example. However, be aware that using Windows 2000 drivers in Windows XP may lead to system instability, so do so at your own risk.
Replace the component
If all else fails, you can always replace the unsupported component with a new component that Windows XP does support. Naturally, this is nearly impossible with laptops and motherboards with integrated devices, but if your system supports swapping out components, this is one way to overcome the problem.