阅读:3880回复:13
安装USB设备驱动程序时出现如下错误:没有替设备实例指定一个功能驱动程序!请教各位是什麽问题!
安装的inf文件如下:
;; ATST2004.inf ;; ********* PLEASE READ *********** ;; The wizard cannot create exact INF files for all buses and device types. ;; You may have to make changes to this file in order to get your device to ;; install. In particular, hardware IDs and logical configurations require ;; intervention. ;; ;; The Win2K DDK documentation contains an excellent INF reference. ;--------- Version Section --------------------------------------------------- [Version] Signature="$Windows 95$" Provider=%ATST% ; If device fits one of the standard classes, use the name and GUID here, ; otherwise create your own device class and GUID as this example shows. Class=USB ClassGUID={36fc9e60-c465-11cf-8056-444553540000} ;--------- SourceDiskNames and SourceDiskFiles Section ----------------------- ; These sections identify source disks and files for installation. They are ; shown here as an example, but commented out. ;[SourceDisksNames] ;1 = "Install Disk",Disk1,, ;[SourceDisksFiles] ;ATST2004.sys = 1,, ;--------- ClassInstall/ClassInstall32 Section ------------------------------- ; Not necessary if using a standard class ; 9X Style [ClassInstall] Addreg=Class_AddReg ; NT Style [ClassInstall32] Addreg=Class_AddReg [Class_AddReg] HKR,,,,%ATST% HKR,,Icon,,"-18" ;--------- DestinationDirs Section ------------------------------------------- [DestinationDirs] DefaultDestDir=10,System32 ATST_Files_Driver = 10,System32\Drivers ;--------- Manufacturer and Models Sections ---------------------------------- [Manufacturer] %MfgName%=ATST_Mfg [ATST_Mfg] ;%DeviceDesc%=ATST_DDI, USB\VID_8205&PID_1100 %USB\VID_8205&PID_1100.DeviceDesc%=ATST_DDI, USB\VID_8205&PID_1100 ;---------- DDInstall Sections ----------------------------------------------- ; --------- Windows 9X ----------------- ; Experimentation has shown that DDInstall root names greater than 19 characters ; cause problems in Windows 98 [ATST_DDI] CopyFiles=ATST_Files_Driver AddReg=ATST_9X_AddReg [ATST_9X_AddReg] HKR,,DevLoader,,*ntkern HKR,,NTMPDriver,,ATST2004.sys HKR,,Description,,%ATST_DeviceDesc% ; --------- Windows NT ----------------- [ATST_DDI.NT] CopyFiles=ATST_Files_Driver [ATST.NT.Services] Addservice = ATST, 0x00000002, ATST_AddService [ATST_AddService] DisplayName = %SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 3 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %10%\System32\Drivers\ATST2004.sys ; --------- Files (common) ------------- [ATST_Files_Driver] ATST2004.sys,,,2 ;--------- Strings Section --------------------------------------------------- [Strings] ProviderName="ATST" MfgName="ATST" DeviceDesc="ATST" DeviceClassName="ATST" SvcDesc="ATST" |
|
沙发#
发布于:2004-11-08 08:08
那位大侠请帮我看看!谢谢!一定给分!
|
|
板凳#
发布于:2004-11-08 11:04
我将这个inf文件改了一下!安装过程中没有出现上边的错误,但好象还是不对!安装后在设备管理器中看到该设备的属性中显示该设备
驱动程序没有安装!奇怪!请高手指点一下! 改后的内容如下: ;; ATST2004.inf ;; ********* PLEASE READ *********** ;; The wizard cannot create exact INF files for all buses and device types. ;; You may have to make changes to this file in order to get your device to ;; install. In particular, hardware IDs and logical configurations require ;; intervention. ;; ;; The Win2K DDK documentation contains an excellent INF reference. ;--------- Version Section --------------------------------------------------- [Version] Signature="$Windows 95$" Provider=%ProviderName% ; If device fits one of the standard classes, use the name and GUID here, ; otherwise create your own device class and GUID as this example shows. Class=USB ClassGUID={36fc9e60-c465-11cf-8056-444553540000} DriverVer=11/10/2004,1.00.0000.0 ;--------- SourceDiskNames and SourceDiskFiles Section ----------------------- ; These sections identify source disks and files for installation. They are ; shown here as an example, but commented out. ;[SourceDisksNames] ;1 = "Install Disk",Disk1,, ;[SourceDisksFiles] ;ATST2004.sys = 1,, ;--------- ClassInstall/ClassInstall32 Section ------------------------------- ; Not necessary if using a standard class ; 9X Style [ClassInstall] Addreg=Class_AddReg ; NT Style [ClassInstall32] Addreg=Class_AddReg [Class_AddReg] HKR,,,,%DeviceClassName% HKR,,Icon,,"-18" ;--------- DestinationDirs Section ------------------------------------------- [DestinationDirs] ATST2004_Files_Driver = 10,System32\Drivers ;--------- Manufacturer and Models Sections ---------------------------------- [Manufacturer] %MfgName%=Mfg0 [Mfg0] %DeviceDesc%=ATST2004_DDI, USB\VID_8205&PID_1100 ;---------- DDInstall Sections ----------------------------------------------- ; --------- Windows 9X ----------------- ; Experimentation has shown that DDInstall root names greater than 19 characters ; cause problems in Windows 98 [ATST2004_DDI] CopyFiles=ATST2004_Files_Driver AddReg=ATST2004_9X_AddReg [ATST2004_9X_AddReg] HKR,,DevLoader,,*ntkern HKR,,NTMPDriver,,ATST2004.sys HKR,,Description,,%DeviceDesc% ; --------- Windows NT ----------------- [ATST2004_DDI.NT] CopyFiles=ATST2004_Files_Driver AddReg=ATST2004_NT_AddReg [ATST2004_DDI.NT.Services] Addservice = ATST2004, 0x00000002, ATST2004_AddService [ATST2004_AddService] DisplayName = %SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 3 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %10%\System32\Drivers\ATST2004.sys [ATST2004_NT_AddReg] HKLM, "System\CurrentControlSet\Services\ATST2004\Parameters",\ "BreakOnEntry", 0x00010001, 0 ; --------- Files (common) ------------- [ATST2004_Files_Driver] ATST2004.sys ;--------- Strings Section --------------------------------------------------- [Strings] ProviderName="ATST" MfgName="ATST" DeviceDesc="ATST2004" DeviceClassName="ATST2004" SvcDesc="ATST2004" |
|
地板#
发布于:2004-11-09 10:40
那位知道,请帮帮我了!谢谢了!
|
|
地下室#
发布于:2004-11-09 13:54
如果你在驱动中定义的自己的GUID的话(不是USB通用的={36fc9e60-c465-11cf-8056-444553540000}),先把INI文件中GUID的一行注释掉,再安装试试。
并且最好把厂商区域放到前面设备类型说明区域之后。 [编辑 - 11/9/04 by hanmuqiu] |
|
5楼#
发布于:2004-11-09 14:58
很感谢你!我试试!
|
|
6楼#
发布于:2004-11-09 15:07
我改了后,还是不行!
|
|
7楼#
发布于:2004-11-09 16:17
你看看设备的驱动信息,如果Windows用 usb.inf 替代了你的 inf 的话, 说明系统总线对你的设备进行了枚据,但是没有成功。在得不到厂商和产品ID的情况下试图用windows自带的驱动来安装。
这应该是下层的问题吧。 [编辑 - 11/9/04 by hanmuqiu] |
|
8楼#
发布于:2004-11-10 09:21
是的,系统提示用USB.inf代替安装。但我用BUS HOUND查看了,枚举过程应该是正确的!
|
|
9楼#
发布于:2004-11-10 09:42
我遇到过一样的情况,当时应该有几种可能性;
1。 兼容机的 USB Hub 供电不足, 不满足设备需要电量。 有时Hub的确供不了500mA的电流。 2。 枚举数据的时序乱了,可重复多次枚举试试。 3。 强制把设备当作未知设备,选择从磁盘安装(先删除usb.inf). |
|
10楼#
发布于:2004-11-10 09:50
十分感谢你!我的设备枚举过程如下:请帮我看看是否有问题!
Device Phase Data Description Cmd.Phase.Ofs(rep) ------ ----- -------------------------------------------------- ---------------- ------------------ 9.1 DI 02 . 1.1.0 9.0 CTL a3 00 00 00 01 00 04 00 GET STATUS 2.1.0(2) 9.0 DI 01 01 01 00 .... 2.2.0 9.0 CTL 23 01 10 00 01 00 00 00 CLEAR FEATURE 4.1.0 9.0 CTL a3 00 00 00 01 00 04 00 GET STATUS 5.1.0(2) 9.0 DI 01 01 00 00 .... 5.2.0 9.0 CTL 23 03 04 00 01 00 00 00 SET FEATURE 7.1.0 9.1 DI 02 . 8.1.0 9.0 CTL a3 00 00 00 01 00 04 00 GET STATUS 9.1.0 9.0 DI 03 01 10 00 .... 9.2.0 9.0 CTL 23 01 14 00 01 00 00 00 CLEAR FEATURE 10.1.0 9.0 CTL a3 00 00 00 01 00 04 00 GET STATUS 11.1.0 9.0 DI 03 01 00 00 .... 11.2.0 9.0 CTL 80 06 00 01 00 00 40 00 GET DESCRIPTOR 12.1.0 9.0 USTS 05 00 00 80 no response 12.2.0 9.0 CTL a3 00 00 00 01 00 04 00 GET STATUS 13.1.0 9.0 DI 03 01 00 00 .... 13.2.0 9.0 CTL 23 03 04 00 01 00 00 00 SET FEATURE 14.1.0 9.1 DI 02 . 15.1.0 9.0 CTL a3 00 00 00 01 00 04 00 GET STATUS 16.1.0 9.0 DI 03 01 10 00 .... 16.2.0 9.0 CTL 23 01 14 00 01 00 00 00 CLEAR FEATURE 17.1.0 9.0 CTL 80 06 00 01 00 00 40 00 GET DESCRIPTOR 18.1.0 9.0 DI 12 01 10 01 00 00 00 20 05 82 00 11 00 00 00 00 ....... ........ 18.2.0 00 01 .. 18.2.16 9.0 CTL a3 00 00 00 01 00 04 00 GET STATUS 19.1.0 9.0 DI 03 01 00 00 .... 19.2.0 9.0 CTL 23 03 04 00 01 00 00 00 SET FEATURE 20.1.0 9.1 DI 02 . 21.1.0 9.0 CTL a3 00 00 00 01 00 04 00 GET STATUS 22.1.0 9.0 DI 03 01 10 00 .... 22.2.0 9.0 CTL 23 01 14 00 01 00 00 00 CLEAR FEATURE 23.1.0 9.0 CTL 00 05 02 00 00 00 00 00 SET ADDRESS 24.1.0 9.0 CTL 80 06 00 01 00 00 12 00 GET DESCRIPTOR 25.1.0 9.0 DI 12 01 10 01 00 00 00 20 05 82 00 11 00 00 00 00 ....... ........ 25.2.0 00 01 .. 25.2.16 9.0 CTL 80 06 00 02 00 00 09 00 GET DESCRIPTOR 26.1.0 9.0 DI 09 02 20 00 01 01 00 a0 32 .. .....2 26.2.0 9.0 CTL a3 00 00 00 02 00 04 00 GET STATUS 27.1.0 9.0 DI 00 01 00 00 .... 27.2.0 发现新硬件,弹出安装驱动程序的对话框! |
|
11楼#
发布于:2004-11-10 10:15
还有就是,驱动程序安装时出现安装对话框没有响应,只能强制结束的情况!
|
|
12楼#
发布于:2004-11-10 10:59
不好意思了, 我只对上层应用有点接触,那些问题都是我在使用别人作的D12设备时遇到的。驱动也是D12附带的。下层的情况我很陌生,从你说到安装驱动文件时挂掉,会否是驱动文件SYS的问题呢,驱动有个例程 AddDevice用来处理第一次插入设备时的操作,感觉好像在那里停住了。
不好意思帮不到你。 |
|
13楼#
发布于:2004-11-10 11:06
很感谢你,我开始一直觉的是我的INF文件编写有问题,现在看来可能是我的驱动程序的问题!很感谢!
|
|