Discussion:
Error 39 with Coinstaller
(too old to reply)
DamL
2010-09-07 13:51:18 UTC
Permalink
Hi,

we have a WDM-based USB driver that is correctly working. I'm trying to
implement first steps to port it to KMDF framework. For now I've only
integrated the first steps as in osrusbfx2. Compilation is no problem.

For now, I can't manage to have the installation working. at end of
installation, I always reach the error 39.

I've copied/pasted the "co installer lines" from KMDF-Build.doc but I
have still some questions :

What KmdfService name should I indicate in .inf file. Is it the same as
my own "AddService" line ?
What syntax is correct for the "CopyFiles" part of wdf ? osrfx2usb is
not the same as in KMDF-Build ?
What version of wdfCoinstaller should we use ? (0,5, 7 or 9 )
Is there a way to know what file is missing? I've tried the !wdfldr and
!wdflogdump in debugger but as it seems the coinstaller are not
executed, there is nothing related to driver indicated in debugger.

Furthermore, I've compiled using check version, but nothing appears in
DebugView/WinDebug where as I've implemented some "debug prints" in
DriverEntry Section.

Best Regards,
Dam
DamL
2010-09-10 08:39:10 UTC
Permalink
Hi, to ease solution, here is the contents of setupact.log retrieved
after installation try of USB device. No error message appears clearly :

WdfCoInstaller: [09/07/2010 17:08.52.769] DIF_INSTALLDEVICE: Pre-Processing

WdfCoInstaller: [09/07/2010 17:08.52.780] ReadComponents: WdfSection
for Driver Service TestUserDriver using KMDF lib version Major 0x1,
minor 0x5

WdfCoInstaller: [09/07/2010 17:08.53.766] DIF_INSTALLDEVICE: Post-Processing

In setupapi.dev.log (windows\inf directory) here is some:

dvi: {Select Best Driver - exit(0x00000000)}
dvi: Default installer: Exit
dvi: {DIF_SELECTBESTCOMPATDRV - exit(0x00000000)}
10:07:38.654
dvi: {DIF_NEWDEVICEWIZARD_FINISHINSTALL} 10:07:38.655
dvi: Class installer: Enter 10:07:38.656
dvi: Class installer: Exit
dvi: Default installer: Enter 10:07:38.661
dvi: Default installer: Exit
dvi: {DIF_NEWDEVICEWIZARD_FINISHINSTALL -
exit(0xe000020e)} 10:07:38.662
ndv: Device install status=0x00000000
ndv: Performing device install final cleanup...
ndv: {Core Device Install - exit(0x00000000)}
dvi: {DIF_DESTROYPRIVATEDATA} 10:07:38.671
dvi: Class installer: Enter 10:07:38.672
dvi: Class installer: Exit
dvi: Default installer: Enter 10:07:38.678
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 10:07:38.679
ump: Server install process exited with code 0x00000000
10:07:38.690
ump: {Plug and Play Service: Device Install exit(00000000)}
dvi: {DIF_DESTROYPRIVATEDATA} 10:07:38.701
dvi: Class installer: Enter 10:07:38.702
dvi: Class installer: Exit
dvi: Default installer: Enter 10:07:38.708
dvi: Default installer: Exit
dvi: {DIF_DESTROYPRIVATEDATA - exit(0xe000020e)} 10:07:38.709

Loading...