wwmmjt
驱动牛犊
驱动牛犊
  • 注册日期2003-10-07
  • 最后登录2003-11-10
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2841回复:9

如何解决“没有替设备实例指定一个功能驱动程序的错误”

楼主#
更多 发布于:2003-10-08 16:42
我用的是DriverWorks做的USB设备驱动程序,硬件那边不是我做的,要实现中断写和批量读的功能。我参

照driverworks里的实例和武安河那本新书的例子对生成的驱动程序修改后,已经编译生成了sys文件。而

且参照了不少的inf文件修改了生成的inf文件,但是现在安装时出现了:
安装设备时,出现了一个错误
安装失败,因为没有替设备实例指定一个功能驱动程序的错误
我已经在论坛上搜索了有关这方面的帖子,但是也没有具体的解决方法。
我不知道该如何解决。
我是个新手,对开发工具也不熟悉,恳请各位帮帮我,多谢了!
以下是我的inf文件的内容。
;--------- Version Section ---------------------------------------------------

[Version]
Signature=\"$CHICAGO$\"
Provider=%MfgName%
LayoutFile=layout.inf

; 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=USBDataCollectingDevice
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\",,, D:\\DataCollecting\\sys\\objchk\\i386

[SourceDisksFiles]
DataCollecting.sys = 1,,
[Philips]
%USB\\VID_0471&PID_0666.DeviceDesc%=DataCollecting.DDI, USB\\VID_0471&PID_0666

;--------- 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,,,,%USBDataCollectingDevice%
HKR,,Icon,,\"-20\"

;--------- DestinationDirs Section -------------------------------------------

[DestinationDirs]
DataCollecting_Files_Driver = 10,System32\\Drivers
DataCollecting_Files_Inf = 10,INF

;--------- Manufacturer and Models Sections ----------------------------------

[Manufacturer]
%MfgName%=Philips




[PreCopySection]
HKR, NoSetupUI,,1
;---------- DDIInstall Sections -----------------------------------------------
; --------- Windows 9X -----------------

; Experimentation has shown that DDInstall root names greater than 19 characters
; cause problems in Windows 98

[DataCollecting_DDI]
CopyFiles=DataCollecting_Files_Driver
AddReg=DataCollecting_AddReg



; --------- Windows NT -----------------

[DataCollecting_Dev.NT]
CopyFiles=DataCollecting_Files_Driver
AddReg=DataCollecting_AddReg

[DataCollecting_Dev.NT.Services]
Addservice = DataCollecting, 0x00000002, DataCollecting_AddService

[DataCollecting_AddService]
DisplayName = %DataCollecting_SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %10%\\System32\\Drivers\\DataCollecting.sys
LoadOrderGroup = Base


[DataCollecting_AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,DataCollecting.sys
HKLM,\"System\\Currentcontrolset\\Services\\DataCollecting\\Parameters\",\"MaximumTransferSize\",0x1

0001,65536
HKLM,\"System\\Currentcontrolset\\Services\\DataCollecting\\Parameters\",\"DebugLevel\",0x10001,2


; --------- Files (common) -------------

[DataCollecting_Files_Driver]
DataCollecting.sys

;--------- Strings Section ---------------------------------------------------

[Strings]
MfgName=\"Philips\"
Philips=\"Philips Semiconductors\"


USB\\VID_0471&PID_0666.DeviceDesc=\"Philips PDIUSBD12 DataCollecting Board\"

DataCollecting_SvcDesc=\"DataCollecting.Sys PDIUSBD12 Bulk&Interrupt IO Driver\"
请各位高手指导。

最新喜欢:

sunmaculasunmac...
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-10-08 19:16
Class=USBDataCollectingDevice//这里的USBDataCollectingDevice是你自定义的设备类?建议使用usb
ClassGUID={36FC9E60-C465-11CF-8056-444553540000}//去掉这一行试试
还有检查一下你固建立的vid和pid与此处的USB\\VID_0471&PID_0666是否一致。
pandengzhe
驱动中牛
驱动中牛
  • 注册日期2003-01-17
  • 最后登录2005-04-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-10-09 10:09
我一开始在2000下装d12驱动是好像也有这样的提示,折腾了好几天也没搞定。郁闷。。。
大风卷兮,林木为摧,意苦若死,招憩不来。 百岁如流,富贵冷灰,大道日往,苦为雄才。 壮士拂剑,浩然弥哀,萧萧落叶,漏雨苍苔。
wwmmjt
驱动牛犊
驱动牛犊
  • 注册日期2003-10-07
  • 最后登录2003-11-10
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-10-09 10:34
jinghuiren:
你好!我经常在这个论坛看到你给大家解决问题!谢谢你的帮助。
我已经按照你的提示做了,结果还是那样的提示对话框。
我现在用的是买的D12的开发板,所以硬件应该没有问题的,我用这个板子带的inf可以成功安装。但是我自己针对我要实现的功能的驱动程序写的inf却不行,我不知道该怎么办,请你再帮我想想办法吧。谢谢!
pandengzhe:
你好!我想你的问题已经解决了,能否指导一下我,谢谢你!
各位高手,等待你们给我指点一二,不胜感谢!
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-10-09 10:49
看不出有什么问题了,如果你固件里的vid和pid和inf中的一样,并且你确定固件枚举没问题,那不应该出现这样的问题的,所以我再次建议你检查一下固件里的vid&pid和inf中的时候一致,这个是最可能出现的问题,还有就是把原来的inf文件和你现在的做比较,看有什么区别,其实你可以直接在原来的inf文件中修改的。
pandengzhe
驱动中牛
驱动中牛
  • 注册日期2003-01-17
  • 最后登录2005-04-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-10-09 10:53
wwmmjt:

我用的类似周立功的板子,由98下源码,在2000下始终装不上,你成功了末?如果成功了,可否把驱动传给我,没源码也行。谢谢!

这里人气不佳啊。。。
大风卷兮,林木为摧,意苦若死,招憩不来。 百岁如流,富贵冷灰,大道日往,苦为雄才。 壮士拂剑,浩然弥哀,萧萧落叶,漏雨苍苔。
wwmmjt
驱动牛犊
驱动牛犊
  • 注册日期2003-10-07
  • 最后登录2003-11-10
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-10-09 15:04
jinghuiren多谢你的一再指教。多多帮助我吧。老师催的很紧。我真的是没有办法。
为了实现我现在要求的功能,另一个同学专门做了板子,他firmware也还没有调试通过。
买的开发板是做测试用的。我把板子附带的inf贴出来你看看。我觉得我已经基本参照它做修改了。
由于买的板子的驱动是用ddk写的,我不知道inf是不是应该和我用DriverWizard生成的inf有什么差别。
我又重新安装了,和昨天的情况有一点差别。我指定了一个sys的安装路径可是它提示说找不到,我下一步后就出现了“安装设备时,出现了一个错误
安装失败,因为没有替设备实例指定一个功能驱动程序”的错误。我看了注册表里没有创建USB\\VID_0471&PID_0666项,sys32的drivers里也没有我的DataCollecting.sys文件。但是INF目录里有了OEM5.inf。现在应该怎么办呢。
我可以看到我的USBDevice上有个黄色的惊叹号,在论坛上看到有人说是初始化错误,我不明白,能帮我解释一下吗?
另外,在控制面板里的卸载硬件中我可以看见我的USBDevice是灰色的,和系统本身的USBRootHub前的符号相同,这又是怎么回事呢?
下面是那个板子的D12test.sys

Signature=\"$CHICAGO$\"
Class=USB
provider=%PHILIPS%
LayoutFile=layout.inf

[Manufacturer]
%MfgName%=Philips

[Philips]
%USB\\VID_0471&PID_0222.DeviceDesc%=D12TEST.Dev, USB\\VID_0471&PID_0222
%USB\\VID_0471&PID_0666.DeviceDesc%=D12TEST.Dev, USB\\VID_0471&PID_0666
%USB\\VID_0471&PID_0888.DeviceDesc%=D12TEST.Dev, USB\\VID_0471&PID_0888

[PreCopySection]
HKR,,NoSetupUI,,1

[DestinationDirs]
D12TEST.Files.Ext = 10,System32\\Drivers
D12TEST.Files.Inf = 10,INF

[D12TEST.Dev]
CopyFiles=D12TEST.Files.Ext
AddReg=D12TEST.AddReg

[D12TEST.Dev.NT]
CopyFiles=D12TEST.Files.Ext
AddReg=D12TEST.AddReg

[D12TEST.Dev.NT.Services]
Addservice = D12TEST, 0x00000002, D12TEST.AddService

[D12TEST.AddService]
DisplayName    = %D12TEST.SvcDesc%
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 2                  ; SERVICE_AUTO_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %10%\\System32\\Drivers\\D12TEST.sys
LoadOrderGroup = Base

[D12TEST.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,D12TEST.sys
HKLM,\"System\\Currentcontrolset\\Services\\D12TEST\\Parameters\",\"MaximumTransferSize\",0x10001,65536
HKLM,\"System\\Currentcontrolset\\Services\\D12TEST\\Parameters\",\"DebugLevel\",0x10001,2


[D12TEST.Files.Ext]
D12TEST.sys


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

[Strings]
PHILIPS=\"Philips Semiconductors\"
MfgName=\"Philips\"
USB\\VID_0471&PID_0222.DeviceDesc=\"Philips PDIUSBD12 Evaluation Board\"
USB\\VID_0471&PID_0666.DeviceDesc=\"Philips PDIUSBD12 SMART Evaluation Board\"
USB\\VID_0471&PID_0888.DeviceDesc=\"Philips PDIUSBD12 USB-EPP Evaluation Board\"
D12TEST.SvcDesc=\"D12TEST.Sys PDIUSBD12 Bulk IO test driver\"
pandengzhe
驱动中牛
驱动中牛
  • 注册日期2003-01-17
  • 最后登录2005-04-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-10-09 15:23
我也是。手动添加可以加上去。不过也没用。

毫无疑问是初始化错误。。。

郁闷。。。
大风卷兮,林木为摧,意苦若死,招憩不来。 百岁如流,富贵冷灰,大道日往,苦为雄才。 壮士拂剑,浩然弥哀,萧萧落叶,漏雨苍苔。
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-10-09 17:32
应该是枚举没有成功,尝试如下的做法:
删除设备管理器里那个没有成功枚举的设备,将设备端复位或者断电再上电,如果问题还没有解决,就检查固件,当然也可能是你驱动程序的问题,你可以做如下的检验,把你inf文件中的DataCollecting.sys改成d12test.sys,如果加载成功就说明你的驱动是有问题的。
pandengzhe
驱动中牛
驱动中牛
  • 注册日期2003-01-17
  • 最后登录2005-04-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-10-09 18:16
jinghuiren:

有时间帮忙看看:

http://www.driverdevelop.com/forum/html_52363.html?1065693476
大风卷兮,林木为摧,意苦若死,招憩不来。 百岁如流,富贵冷灰,大道日往,苦为雄才。 壮士拂剑,浩然弥哀,萧萧落叶,漏雨苍苔。
游客

返回顶部