404 Tech Support

How Do I Install A Driver When The Hardware Doesn’t Show Up In Device Manager?

I was working on a computer recently that was getting a fresh install of Windows XP on it. After the Windows setup was completed, it had a few unknown devices. One of those devices was the network card, so I downloaded the driver from HP and moved it over to the computer by USB figuring I could download the rest directly once I could get the NIC installed.

I ran through the driver’s setup file that I had downloaded and everything seemed to go fine until it froze and eventually crashed. I’m not sure what caused it but it removed the network card as an unknown device in Device Manager. The problem was it didn’t put it under Network Devices either. It wasn’t listed anywhere and the NIC wasn’t working. No combination of scanning for new hardware or restarting the computer caused it to be listed in device manager. The link lights on the integrated network card were still on, indicating it was getting power. I ran through the driver setup file a few times to no avail and received an error saying the driver was already installed. I also tried manually searching through the registry for the device but it wasn’t listed

After giving everything else I could think of a whirl, something popped into my head from a previous article I had written where a wireless card wasn’t fully functional after reimaging. To fix that problem back in 2008, I used Devcon, a tool from Microsoft that is a command line version of Device Manager.

If the GUI Device Manager couldn’t see the hardware, why would the command line alternative? Surprisingly, it worked though. I was able to use devcon to list all device and I eventually found an entry for Network Controller. I further used devcon’s parameters to get the hardware ID and other information of the card so that I could uniquely identify it, similar to how it worked with the wireless card. I then installed the .inf from the driver I had downloaded earlier using the devcon command:

[shell]Devcon install e100b325.info “PCIven_8086&dev_27dc&cc_0200″[/shell]

I had previously tried having devcon remove the device, rescan, and update the device but nothing worked until the install command. Refreshing the Device Manager, the network card was now listed correctly under network devices again and allowed me to download the rest of the drivers needed to complete the image.

You can download DevCon directly from Microsoft. From the Device Console help (devcon.exe /?), here is the full functionality of devcon:

Device Console Help:

devcon.exe [-r] [-m:\]  [...]

-r if specified will reboot machine after command is complete, if needed.

 is name of target machine.

 is command to perform (see below).

... is one or more arguments if required by command.

For help on a specific command, type: devcon.exe help 
classfilter          Allows modification of class filters.
classes              List all device setup classes.
disable              Disable devices that match the specific hardware or instance ID.
driverfiles          List driver files installed for devices.
drivernodes          Lists all the driver nodes of devices.
enable               Enable devices that match the specific hardware or instance ID.
find                 Find devices that match the specific hardware or instance ID.
findall              Find devices including those that are not present.
help                 Display this information.
hwids                Lists hardware ID's of devices.
install              Manually install a device.
listclass            List all devices for a setup class.
reboot               Reboot local machine.
remove               Remove devices that match the specific hardware or instance ID.
rescan               Scan for new hardware.
resources            Lists hardware resources of devices.
restart              Restart devices that match the specific hardware or instance ID.
sethwid              Modify Hardware ID's of listed root-enumerated devices.
stack                Lists expected driver stack of devices.
status               List running status of devices.
update               Manually update a device.
updateni             Manually update a device (non interactive).