Win7 Intel 64

Windows could not find driver software for your device?

I have taken our older driver and hopefully ported it to KMDF and would like to start the testing process. My test system is a relatively new Intel
i7 running Windows 7 64 bit. I took the old .inf file and did very little to it. When I try to install the driver, however, I get the error “Windows
could not find driver software for your device”. I can see from the device manager that the device ID/vendor ID’s match. The driver compiles without
errors/warnings, but I can’t tell what I am doing wrong. Is there any way to know how far it’s getting, if at all?

[Version]
Signature=“$WINDOWS NT$”
Class=MyDev
ClassGuid={83A20C0A-4EB6-4D8A-8C3A-6946BEC86DFD}
Provider=“MyCo, Inc”
DriverVer=12/12/2010,1.0.0.1
catalogfile=MyDev.cat

[ClassInstall32]
AddReg=MyDev.AddClassReg

[Manufacturer]
%MyDev.Manufacturer%=MyDev

[ClassInstall32]
AddReg=MyDev.AddClassReg

[MyDev]
%MyDev.DeviceDesc%=MyDev.INSTALL, PCI\VEN_21e2&DEV_5234

[MyDev.Services]
AddService = MyDev,%SPSVCINST_ASSOCSERVICE%,MyDev_Service_Inst

[MyDev_Service_Inst]
ServiceType = %SERVICE_KERNEL_DRIVER%
StartType = %SERVICE_MANUAL_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\MyDev.sys
DisplayName = %MyDev.DeviceDesc%

[SourceDisksNames]
1=%MyDev.DriverDiskName%,“”,1

[SourceDisksFiles]
MyDev.sys=1

[PreCopySection]
HKR,NoSetupUI,1

[DestinationDirs]
MyDev.CopyFiles = 10,system32\drivers ; WINDOWS\SYSTEM32\DRIVERS

[MyDev.INSTALL]
CopyFiles=MyDev.CopyFiles
AddReg=MyDev.AddRegLoader

[MyDev.AddClassReg]
HKR,%MyDev.ClassName%
HKR,EnumPropPages32,“MyDevDevicePropertyPages.dll,DevicePropPageProvider”

[MyDev.AddRegLoader]
HKR,DevLoader,*ntkern
HKR,NTMPDriver,TapDrv.sys

[MyDev.INSTALL.NT]
CopyFiles=MyDev.CopyFiles

[MyDev.INSTALL.NT.Services]
AddService = MyDev,0x00000002,MyDev_Service_Inst,MyDev_EventLog_Inst

[MyDev_Service_Inst]
ServiceType = 1 ;%SERVICE_KERNEL_DRIVER%
StartType = 3 ;%SERVICE_AUTO_START%
ErrorControl = 1 ;%SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\MyDev.sys
DisplayName = %MyDev.DeviceDesc%

[MyDev_EventLog_Inst]
AddReg=MyDev.AddEventLogReg

[MyDev.AddEventLogReg]
HKR,EventMessageFile,0x00020000,“%%SystemRoot%%\System32\IoLogMsg.dll;%%SystemRoot%%\System32\drivers\MyDev.sys”
HKR,TypesSupported,0x00010001,7

[MyDev.CopyFiles]
MyDev.sys

;---------------------------------------------------------------;

[Strings]
MyDev.Provider=“MyCo Inc.”
MyDev.Manufacturer=“MyCo Inc.”
MyDev.DeviceDesc=“My Interface Device”
MyDev.ClassName=“MyDev Device”
; TODO: If not installing from a diskette, change the following string
; to indicate the source location.
MyDev.DriverDiskName=“MyDev Installation Diskette”

did you look at the setup logs? looks like you don’t have amd64 decorations on the appropriate install sections which IIRC are required for x64. also, make sure to turn off signing checks before attempting to load your unsigned driver

d

Wow! Thanks for the quick and helpful reply. Well, it says "No class installer for ‘PCI Device’. Does that mean anything to you?

On Mon, 10 Jan 2011 18:36:26 -0500 (EST), xxxxx@Microsoft.com wrote:

did you look at the setup logs? looks like you don’t have amd64 decorations on the appropriate install sections which IIRC are required for x64. also, make sure to turn off signing checks before attempting to load your unsigned driver

d

Also, I believe I needed to add the coinstallers for KMDF, which I did:
;-------------- WDF Coinstaller installation

[DestinationDirs]
CoInstaller_CopyFiles = 11

[MyDev.NT.CoInstallers]
AddReg=CoInstaller_AddReg
CopyFiles=CoInstaller_CopyFiles

[CoInstaller_CopyFiles]
WdfCoinstaller01000.dll

[SourceDisksFiles]
WdfCoinstaller01000.dll=1

[CoInstaller_AddReg]
HKR,CoInstallers32,0x00010000, “WdfCoinstaller01000.dll,WdfCoInstaller”

[MyDevi.Wdf]
KmdfService = MyDev, MyDevi_wdfsect
[MyDev_wdfsect]
KmdfLibraryVersion = 1.0

On Mon, 10 Jan 2011 18:36:26 -0500 (EST), xxxxx@Microsoft.com wrote:

did you look at the setup logs? looks like you don’t have amd64 decorations on the appropriate install sections which IIRC are required for x64. also, make sure to turn off signing checks before attempting to load your unsigned driver

d

Michael Wade wrote:

Also, I believe I needed to add the coinstallers for KMDF, which I did:

Yes, but as Doron said, you still have not added the amd64 decorations.

[Manufacturer]
%MyDev.Manufacturer%=MyDev,NTamd64

[MyDev]
%MyDev.DeviceDesc%=MyDev.INSTALL, PCI\VEN_21e2%DEV_5234

[MyDev.NTamd64]
%MyDev.DeviceDesc%=MyDev.INSTALL, PCI\VEN_21e2%DEV_5234


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.

Much farther! Thanks again. OK, now it is stopping

Error parsing service type line number (AddService line below)
[MyDev.Services]
AddService = MyDev,%SPSVCINST_ASSOCSERVICE%,MyDev_Service_Inst

[MyDev_Service_Inst]
ServiceType = %SERVICE_KERNEL_DRIVER%
StartType = %SERVICE_MANUAL_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\MyDev.sys
DisplayName = %MyDEv.DeviceDesc%

On Mon, 10 Jan 2011 18:36:26 -0500 (EST), xxxxx@Microsoft.com wrote:

did you look at the setup logs? looks like you don’t have amd64 decorations on the appropriate install sections which IIRC are required for x64. also, make sure to turn off signing checks before attempting to load your unsigned driver

d

if this is a pnp driver, i am pretty sure you want demand start, not manual, but that is not a parsing problem

d

Michael Wade wrote:

Much farther! Thanks again. OK, now it is stopping

Error parsing service type line number (AddService line below)
[MyDev.Services]
AddService = MyDev,%SPSVCINST_ASSOCSERVICE%,MyDev_Service_Inst

[MyDev_Service_Inst]
ServiceType = %SERVICE_KERNEL_DRIVER%
StartType = %SERVICE_MANUAL_START%
ErrorControl = %SERVICE_ERROR_NORMAL%
ServiceBinary = %12%\MyDev.sys
DisplayName = %MyDEv.DeviceDesc%

If that was the ENTIRE INF file that you posted at the beginning of the
thread, then the problem is that you don’t have definitions for the
strings SPSVCINST_ASSOCSERVICE, SERVICE_KERNEL_DRIVER,
SERVICE_MANUAL_START or SERVICE_ERROR_NORMAL.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.