0

I am in the process of modifying an existing device driver. After making some organizational changes to the project build structure I was able to successfully compile and install the driver on a clean Windows 7 64 bit machine. I then proceeded to plug the device into the machine via USB. The Plug and Play manager kicked off and everything appeared to be going fine, but ultimately the device was NOT successfully installed. The only clue as to what might be happening was listed in the setupapi.dev.log as follows:

     ndv: 12:37:20.307      Installing device...
     dvi: 12:37:20.307      {DIF_INSTALLDEVICE}
     dvi: 12:37:20.307           Class installer: Enter
     inf: 12:37:20.307                Opened INF: 'C:\Windows\System32\DriverStore\FileRepository\some.inf_amd64_neutral_9ab34af1e046559f\some.inf' ([strings])
     inf: 12:37:20.307                Opened INF: 'C:\Windows\System32\DriverStore\FileRepository\some.inf_amd64_neutral_9ab34af1e046559f\some.inf' ([strings])
!!!  dvi: 12:37:20.370           Class installer: failed(0x00000570)!
!!!  dvi: 12:37:20.370           Error 1392: The file or directory is corrupted and unreadable.
     dvi: 12:37:20.370      {DIF_INSTALLDEVICE - exit(0x00000570)}
!!!  ndv: 12:37:20.370      Error(00000570) installing device!
     ndv: 12:37:20.370      Device install status=0x00000570
     ndv: 12:37:20.370      Performing device install final cleanup...
!    ndv: 12:37:20.370      Queueing up error report since device installation failed...

I have verified that the disk and files on the machine are NOT corrupt. I have spent hours searching for some clue as to what may be happening, but there does not appear to be a clear path forward in terms of investigation. How do I determine what is going on during the device installation process that is preventing proper installation?

HighExodus
  • 104
  • 2
  • 11
  • 1
    Did you try hooking up WinDbg to root cause the issue? – tchau.dev Oct 27 '15 at 21:38
  • @tchau.dev I did, but trying to debug the installation without access to any of the source code for the installation routines is torturous and hugely time consuming. The documentation for the routines is spotty at best. – HighExodus Oct 30 '15 at 20:40
  • Did you hook WinDbg to your driver? Make sure that you at least hit the driver entry routine. – tchau.dev Oct 31 '15 at 00:23
  • @tchau.dev I did hook up WinDbg to DrvInst.exe, which the application that performs the driver installation when I connect my device. Are you saying that I should hit the driver entry routine even though I am debugging the installation of the driver when a device is plugged in, NOT the actual driver itself? – HighExodus Nov 04 '15 at 17:56
  • Yes, I'm suggesting you investigate the driver, instead of the installer, to rule out the possibility of a driver bug. DriverEntry is a good place to start. Once you confirmed that's working, you can then check the EvtDriverDeviceAdd function, and so on. – tchau.dev Nov 05 '15 at 05:56
  • @HighExodus Try changing the inf, rename it or some thing like that. I'd also faced this kind of problem and solved it after some trials , try replacing the inf file (same name same contents) just put a new copy. – Stubborn Sep 14 '16 at 11:45

0 Answers0