Hi,
I am running my driver test on a Window Vista 86 system. We develop a new board with pci device number 0201 (the other old devices use 0101). I update the inf file, uninstall the whole package and reinstall the package. I have no problem to install the old board with device 0101. When I plug in a new board with device number 0201, system does pop out found new device window. But no matter I give it CD or give it the directory where all install files located, It always shows could not find software for this device. If I use add device in control panel to manually install , it give me a dummy device without bus number and device number, so it failed too. I look at the registry, the driver using oem8.inf which is the updated inf file. Finally, I found the unconfigured device in device manages and choose update driver software to install it. It seems the only way I could install our new device. I guess I might miss something in my inf file.
The second question is about the registry key. If I install an old device, under the registry controlset\control\class\ourclass\ there is a new key 0001 or 0002 with the vender ID and device ID created. For the new device even the device is installed successfully, the registry did not add a key for this device under our class. So each time , I switch the device to another slot, I will get same problem. I don’t want our customers get this kind problem when they install our devices. Hope someone here can tell me how to fix the problem. I copy our inf file below.
Thanks.
Bob Bao
[Version]
Signature=“$WINDOWS NT$”
Provider=%Amtelco%
Class=CTD
ClassGUID={16F4A638-1B29-435B-85A1-0077D14CD8B2} ; from “guidgen”
DriverVer=5/4/2010,2.2.1.0
;CatalogFile = XDS_Device.cat
[DestinationDirs]
DefaultDestDir = 12
XDSClassInstallerCopyFiles = 11
XDS_Device_CoInstallerCopyFiles = 11
; ================= Class section =====================
[ClassInstall32]
Addreg=XDSClassReg
CopyFiles = XDSClassInstallerCopyFiles
[XDSClassReg]
HKR,0,%ClassName%
HKR,Icon,100
HKR,Installer32,“xdsclassinst.dll,XDSClassInstaller”
[XDSClassInstallerCopyFiles]
xdsclassinst.dll
;*****************************************
; XDS Device Install Section
;*****************************************
[Manufacturer]
%Amtelco% = Amtelco.Mfg
[Amtelco.Mfg]
%Amtelco.DeviceDesc0% = XDS_Device, PCI\VEN_14E3&DEV_0101&SUBSYS_00000000
%Amtelco.DeviceDesc1% = XDS_Device, PCI\VEN_14E3&DEV_0001&SUBSYS_00000000
%Amtelco.DeviceDesc2% = XDS_Device, PCI\VEN_14E3&DEV_0100&SUBSYS_00000000
%Amtelco.DeviceDesc3% = XDS_Device, PCI\VEN_14E3&DEV_0201&SUBSYS_00000000
%Amtelco.DeviceDesc4% = XDS_Device, PCI\VEN_14E3&DEV_0301&SUBSYS_00000000
[XDS_Device.NT]
CopyFiles=XDS_Device.NT.Copy
[XDS_Device.NT.Copy]
xds_2000_pci.sys
[XDS_Device.NT.HW]
AddReg=XDS_Device.NT.HW.AddReg
[XDS_Device.NT.HW.AddReg]
HKR,“BeepCount”,0x00010003,4
HKLM,System\CurrentControlSet\Services\XDS_2000_PCI, EventName, 0, “XDSEvent314613AmtelCo”
HKLM,System\CurrentControlSet\Services\XDS_2000_PCI, VrEventName, 0, “XDSEvent314613AmtelCoVR”
;Service installation
[XDS_Device.NT.Services]
AddService = xds_2000_pci, %SPSVCINST_ASSOCSERVICE% , xds_2000_Service_Inst, xds_2000_EventLog_Inst
[XDS_2000_Service_Inst]
DisplayName = %XDS.SVCDESC%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START (Leave at 3)
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\xds_2000_pci.sys
LoadOrderGroup = XDS Drivers
[xds_2000_EventLog_Inst]
AddReg = xds_2000_EventLog_AddReg
[xds_2000_EventLog_AddReg]
HKR,EventMessageFile,0x00020000,“%SystemRoot%\System32\IoLogMsg.dll;%SystemRoot%\System32\drivers\xds_2000_pci.sys”
HKR,TypesSupported,0x00010001,7
;CoInstall for KMDF
[XDS_Device.NT.CoInstallers]
AddReg=XDS_Device_CoInstaller_AddReg
CopyFiles= XDS_Device_CoInstallerCopyFiles
[XDS_Device_CoInstaller_AddReg]
HKR,CoInstallers32,0x00010000, “WdfCoInstaller01007.dll, WdfCoInstaller”
[XDS_Device_CoInstallerCopyFiles]
WdfCoInstaller01007.dll
[SourceDisksNames]
1 = %DiskId1%,“”
[SourceDisksFiles]
xds_2000_pci.sys = 1,
xdsclassinst.dll = 1,
WdfCoInstaller01007.dll=1;
[XDS_Device.NT.Wdf]
KmdfService = XDS_DEVICE, XDS_Device_wdfsect
[XDS_Device_wdfsect]
KmdfLibraryVersion = 1.7
[Strings]
SPSVCINST_ASSOCSERVICE = 0x00000002
ClassName = “Computer Telephony Device”
DiskId1 = “XDS 2000 Driver Installation Disk #1”
Amtelco.DeviceDesc0 = “Amtelco Infinity Telephony Board”
Amtelco.DeviceDesc1 = “Amtelco Infinity Telephony Board”
Amtelco.DeviceDesc2 = “Amtelco Infinity Telephony Board”
Amtelco.DeviceDesc3 = “Amtelco Infinity Telephony Board”
Amtelco.DeviceDesc4 = “Amtelco Infinity Telephony Board”
Amtelco = “American Tel-A-Systems, Inc.”
XDS.SVCDESC = “XDS_2000_pci”