ISolar
驱动牛犊
驱动牛犊
  • 注册日期2003-03-28
  • 最后登录2004-10-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1140回复:1

HID 驱动问题,欢迎大虾指点

楼主#
更多 发布于:2003-10-27 10:36
HID 驱动在 轮循 方式下 不知为什么不调用 IOCTL_HID_READ_REPORT,从而不能够正常工作。
初始化过程基本正常。
驱动程序执行消息跟踪如下:

HidAddDevice( PDRIVER_OBJECT->0x811a82f0 , PDEVICE_OBJECT->0x811bf230
函数调用以及增加 hid 小驱动成功
pnp-> minifuction = 0x18
 return status = 0xc00000bbL
 
Pnp-> minifuction = 0x0d
return status = 0xc00000bbL

pnp IRP_MN_START_DEVICE
return status = 0x00000000L

Ioctrl ->HidGetDeviceDes
return status = 0x00000000L

Ioctrl->HidGetDeviceAttrib
return status = 0x00000000L

Ioctrl->HidGetReportDes
return status = 0x00000000L

Pnp->minifuction = 0x09
return status = 0x00000000L

Pnp->minifuction = 0x14
return status = 0xc00000bbL

Pnp->minifuction = 0x07
return status = 0x00000000L

Pnp->minifuction = 0x13( 即是 PNP 的 IRP_MN_QUERY_ID )  
pnp IRP_MN_QUERY_ID ->type = 0x00000000
pnp IRP_MN_QUERY_ID ->status = 0x00000000
pnp IRP_MN_QUERY_ID ->msg = ROOT\\HIDCLASS
return status = 0x00000000L

Pnp->minifuction = 0x13( 即是 PNP 的 IRP_MN_QUERY_ID )  
pnp IRP_MN_QUERY_ID ->type = 0x00000000
pnp IRP_MN_QUERY_ID ->status = 0xc00000bb
pnp IRP_MN_QUERY_ID ->msg = NULL
return status = 0xc00000bbL
在这 query id 完成后,系统不再进行操作
正常情况应该系统要查询调用:IOCTL_HID_READ_REPORT ,这样便可以输入信息了。
ISolar
youngcoolxiaomi
驱动牛犊
驱动牛犊
  • 注册日期2003-10-14
  • 最后登录2005-03-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-11-03 10:47
哥们,不是说像人机接口这样的设备,可以调用系统在代的hid驱动而不用编写专门的驱动程序么
我编写的程序老是在安装时系统提示出错造成程序不能启动,我经过试验认为我的hid报告描述符
编写有误,请问大虾怎样单独的测试报告描述符呢?哪有专、们的软件?
游客

返回顶部