WinterDay
驱动牛犊
驱动牛犊
  • 注册日期2004-08-01
  • 最后登录2004-10-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1747回复:9

读写hid设备

楼主#
更多 发布于:2004-10-12 12:39
编写了一个读写hid设备的程序。(winxp+vc6.0)

开始运行程序时
HidD_GetHidGuid 和 SetupDiGetClassDevs都调用成功
但是程序第一次运行到SetupDiEnumDeviceInterfaces时,就返回ERROR_NO_MORE_ITEMS的错误,表示没有任何可以利用的device interface。

不过我的pc上确实有usb mouse,请问一下为什么会出现这样的问题。多谢。
WinterDay
驱动牛犊
驱动牛犊
  • 注册日期2004-08-01
  • 最后登录2004-10-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-10-12 17:14
希望大虾们多指教啊。
fgf1014
驱动牛犊
驱动牛犊
  • 注册日期2003-02-22
  • 最后登录2005-10-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-10-13 13:18
可能是GUID不对吧,我是直接在注册表中找的GUID,没有用过HidD_GetHidGuid,不敢妄下断言。
tase
驱动小牛
驱动小牛
  • 注册日期2002-03-10
  • 最后登录2015-01-23
  • 粉丝0
  • 关注0
  • 积分494分
  • 威望74点
  • 贡献值0点
  • 好评度53点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-10-13 15:46
DDK 里有几个现成例子写的很好,我运行了!

可以用的!
--- TASE ---
lejianz
驱动中牛
驱动中牛
  • 注册日期2003-03-05
  • 最后登录2023-11-15
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望145点
  • 贡献值0点
  • 好评度116点
  • 原创分0分
  • 专家分0分
  • 社区居民
地下室#
发布于:2004-10-13 17:03
兄弟,USB MOUSE是不能读写的,你是不能在WIN2K下打开的,但98可以。你可以做以下实验:
1、在98上运行你当前的程序。
2、不打开MOUSE和KEYBOARD,而是其它的USB设备。
试一试吧。不行的话,可能你的程序有问题。
一起交流,共同提高!
WinterDay
驱动牛犊
驱动牛犊
  • 注册日期2004-08-01
  • 最后登录2004-10-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-10-13 18:10
我是在xp下测试的。不过我还没有进行到读写的那一步,只是想列举
hid设备的interface的时候就过不去了。
fgf1014
驱动牛犊
驱动牛犊
  • 注册日期2003-02-22
  • 最后登录2005-10-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-10-13 21:58
找对GUID,这样是可以打开的
CreateFile(m_strPath,
GENERIC_WRITE,
FILE_SHARE_READ,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
NULL);
但是用了GENERIC_READ就不行了。

WinterDay
驱动牛犊
驱动牛犊
  • 注册日期2004-08-01
  • 最后登录2004-10-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-10-13 22:22
to fgf1014:
请问你说的在注册表里找到guid,是什么注册表项的值?万分感想了。
fgf1014
驱动牛犊
驱动牛犊
  • 注册日期2003-02-22
  • 最后登录2005-10-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-10-13 23:11
在HKLM\\System\\CurrentControlSet\\Enmu下找到usb mouse的vid和pid,然后根据vid和pid在HKLM\\System\\CurrentControlSet\\Control\\DeviceClasses下面找就能找到它的GUID了。

[编辑 -  10/13/04 by  fgf1014]

[编辑 -  10/13/04 by  fgf1014]
WinterDay
驱动牛犊
驱动牛犊
  • 注册日期2004-08-01
  • 最后登录2004-10-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2004-10-13 23:22
我去试试看。多谢。
游客

返回顶部