Windows Driver Installation
rem list all known drivers pnputil -e rem add driver defined by driver.inf pnputil -a driver.inf rem add and install driver defined by driver.inf pnputil -i -a driver.inf
Besides other things, like query for existing hardware and its drivers, devcon can be used, to install a hardware driver with by its INF-file.
; install devcon [/r] install INFfile HardwareID ; update devcon [/r] update INFfile HardwareID ; update non interactive devcon [/r] update INFfile HardwareID
- Conditional reboot. Reboots the system after completing an operation when a reboot is required to make the change effective. By default, DevCon does not reboot the system.
- Specifies the full path and file name of the INF file for the device. If you omit the path, DevCon assumes that the file is in the current directory.
- Specifies a hardware ID for the device. The specified hardware ID must exactly match the hardware ID of the device. Patterns are not valid. Do not type a single quote character (') to indicate a literal value.
When using install, the device is added twice. One time correctly, other with warning. Broken driver has exactly the hardware device given.
Therefore update (or even better updateni) should be used (see http://www.msfn.org/board/topic/17532-unattended-install-for-inf-drvers/):
devcon.exe update c:\tmp\HECI\HECI.inf "PCI\VEN_8086&DEV_29B4"
I've read about following other approaches, but failed to use them:
- HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\DevicePath: locations where Windows will look for suitable drivers when attempting a silent device install, see http://msdn.microsoft.com/en-us/library/ff553973%28VS.85%29.aspx
- Driver Install Framework: http://msdn.microsoft.com/en-us/library/ff544838%28v=vs.85%29.aspx
- rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 c:\xxxx.inf