blue123
驱动中牛
驱动中牛
  • 注册日期2002-11-09
  • 最后登录2009-09-14
  • 粉丝0
  • 关注0
  • 积分91分
  • 威望11点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
阅读:2611回复:6

WINCE5.0下USB驱动注册表配置,急!!!

楼主#
更多 发布于:2007-09-16 01:43
有一USB设备,在xp下被认为是HID的.
CE下我先写了一个驱动UBC.dll(该驱动是空的,只是个架构,将系统中的KBDHID.dll改成我的UBC.dll,测试可以通过,插上USB键盘有我驱动里的消息弹出,应该可以说明该驱动架购没有问题)
在XP下用usbview看到的我的USB设备的信息如下:
Device Descriptor:
bcdUSB:             0x0110
bDeviceClass:         0x00
bDeviceSubClass:      0x00
bDeviceProtocol:      0x00
bMaxPacketSize0:      0x08 (8)
idVendor:           0x1BD2
idProduct:          0x0001
bcdDevice:          0x2005
iManufacturer:        0x01
iProduct:             0x02
iSerialNumber:        0x00
bNumConfigurations:   0x01

ConnectionStatus: DeviceConnected
Current Config Value: 0x01
Device Bus Speed:      Low
Device Address:       0x01
Open Pipes:              0

我在CE 下的注册表信息如下:
[HKEY_LOCAL_MACHINE\Drivers\HID\ClientDrivers\UsbKey]
"DLL"="UBC.DLL"
"Prefix"="UBC"
"IClass"="{CBE6DDF2-F5D4-4e16-9F61-4CCC0B6695F3}"
"RemoteWakeup"=dword:00000001

[HKEY_LOCAL_MACHINE\Drivers\HID\LoadClients\7122_1\Default\Default\UsbKey]
"DLL"="UBC.DLL"


[HKEY_LOCAL_MACHINE\Drivers\USB\ClientDrivers\UsbKey]
"DLL"="UBC.DLL"
"Prefix"="UBC"
"IClass"="{CBE6DDF2-F5D4-4e16-9F61-4CCC0B6695F3}"
"RemoteWakeup"=dword:00000001

[HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\7122_1\Default\Default\UsbKey]
"DLL"="UBC.DLL"
"Prefix"="UBC"

系统启动后可以看到,我的注册表是有的,但插上我的USB设备,死活就么有消息出来? 根本没有任何反应?

为什么呢?


十万火急!  谢谢!

驱动架构和注册表我都是参照PB下的keyboard驱动和注册表修改的.
还有记得原来用usb摄相头时,插如设备,系统会弹出个框让输入驱动的名称,怎么我的设备插入后什么反应没有? 该设备在XP下是好用的.
努力!
blue123
驱动中牛
驱动中牛
  • 注册日期2002-11-09
  • 最后登录2009-09-14
  • 粉丝0
  • 关注0
  • 积分91分
  • 威望11点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-09-16 11:26
我的消息是在 HIDDeviceNotifications中弹出的.

各位有什么高见啊?

我看帮助就是这么配置的,不知道哪里出错了.
努力!
blue123
驱动中牛
驱动中牛
  • 注册日期2002-11-09
  • 最后登录2009-09-14
  • 粉丝0
  • 关注0
  • 积分91分
  • 威望11点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-09-17 09:48
经过跟踪分析,先发现如下现象:
我的注册表配置和驱动都应该没有问题.

在wince5.0的系统的USBHID驱动中出现问题.
系统加载后系统首先启动USBHID驱动, 在该驱动的USBDeviceAttach 函数中出现问题.
该函数传进来的 UsbInterface 中没有ENDPOINT 信息,所以系统就中断了,也没有信息框弹出,让输入什么驱动名称之类的.

向有硬件经验的大侠请教一下:
像是usb的什么idwendor,ipproduct还有endpoint信息,是不是都是硬件出厂是在硬件里要写好的,如果没有这些信息,硬件就不可以被初始化?
努力!
blue123
驱动中牛
驱动中牛
  • 注册日期2002-11-09
  • 最后登录2009-09-14
  • 粉丝0
  • 关注0
  • 积分91分
  • 威望11点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-09-17 11:39
这里几年前人期很旺的,现在怎么人这么少了?

大家都不搞CE吗?
努力!
blue123
驱动中牛
驱动中牛
  • 注册日期2002-11-09
  • 最后登录2009-09-14
  • 粉丝0
  • 关注0
  • 积分91分
  • 威望11点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-09-18 17:08
没人做过吗?
我现在通过跟踪下面的USBD层,虽然发现设备接口是HID的,但可以不加载系统的hid驱动,而直接调进自己的驱动.
 现在自己的驱动有点问题, 苦恼!
努力!
microsun
论坛版主
论坛版主
  • 注册日期2002-11-11
  • 最后登录2014-07-18
  • 粉丝0
  • 关注0
  • 积分1052分
  • 威望1159点
  • 贡献值0点
  • 好评度848点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2007-09-18 20:24
插入USB设备以后出现一个对话框让输入驱动程序的名称,是因为找不到这个设备的驱动程序.
你现在的情况,看来驱动已经找到了.接下来的问题你自己仔细调就行,太细的问题别人也不好帮忙
学海无涯
frostofmourne
驱动牛犊
驱动牛犊
  • 注册日期2007-11-25
  • 最后登录2007-12-25
  • 粉丝0
  • 关注0
  • 积分410分
  • 威望42点
  • 贡献值0点
  • 好评度41点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2007-11-25 23:15
关注~~
march forth alone through the ashes
游客

返回顶部