How do I debug a failed device install or disable?
Debugging a failed device install or disable can be tough. The error could be hidden in the depths of the system and it might take awhile to figure it out. The error code on the device might be of some help, but it is not always clear. For instance, you might get a code 10 for a failed start which means that the driver failed the pnp start irp...but that doesn't tell you why thedriver failed the request in the first place. The error text in the add new/upgrade hardware wizard is pretty vague as well.
So what's a developer to do? Where do you start? Well, you should check the setup logs. These logs exist on all versions of windows, starting with Windows 2000:
- %windir%\setupapi.log
- %windir%\setupact.log
- %windir%\setuperr.log
In Windows Vista, there are 2 additional log files
- %windir%\inf\setupapi.app.log
- %windir%\inf\setupapi.dev.log
Finally, if you are installing a KMDF driver, the KMDF coinstaller writes out errors to setupact.log. There are also KMDF logs (depending on the version you installed):
- %windir%\wdf01000inst.log
- %windir%\wdf01001inst.log
- %windir%\wdf01005inst.log
If these logs do not have information in them, turn on verbose setup logging (I wrote about how to do this previously) and retry the installation. If the log files still do not indicate what is wrong, you have to use the error codes to start digging around...
Comments
Anonymous
March 12, 2007
PingBack from http://newyear2006.wordpress.com/2007/03/12/geratetreiber-probleme-mit-windows-vista/Anonymous
September 11, 2007
The more things change- the more they... whatever. Two issues in today's entry, both coming from a responseAnonymous
September 18, 2007
In this article, I'll cover the basic things you need to do to use the new WdfVerifier tool to easilyAnonymous
October 06, 2007
The last few months I've been working on the WDF 1.7 (UMDF+KMDF) coinstallers (that's one ofAnonymous
October 06, 2007
PingBack from http://msdnrss.thecoderblogs.com/2007/10/06/how-driver-installation-works/