购买的一台设备,是通过usb与计算机相连接的,需要获取guid,然后打开并读取数据!
请问应该如果获得guid呢,很多文献都提出 首先要得到guid 然后才能打开设备!
我这个设备并没有配套的驱动程序,连接后,会提示发现新硬件,但不用去管他,然后打开配套的应用软件,就可以直接操作了,该设备是用来采集数据的.
我用bushound软件,可以分析到usb口的数据!所以想自己编程实现类似的功能!但由于guid之类的东东不太明白,不知道应该如何打开设备!请大家指教

解决方案 »

  1.   

    bushound是基于过滤器驱动的,本身并不与设备通讯,只是拦截下IRP然后简单的显示。
    楼主确定要做类似功能?要与USB设备通讯,没有接口GUID总有setup GUID吧打开设备管理器 看你的设备识别成什么设备了,用该设备类的GUID遍历,直到找到你的设备
      

  2.   

    更正一下,应该是HID设备,插入usb设备后,不用安装驱动就可以用了!
    BusHound截获的IRP里面有没有包含采集的数据信息呢?
      

  3.   

    那如果我需要读取数据,应该如何做呢? 
    这个设备是HID设备,中断传输方式!CreateFile可以正确执行,但是之后就不知道要怎么做了,用bushound抓取一些数据包发现,开始采集数据之后,先是一个DO,然后几个DI.好像就是先发给usb一个数据包,表明中断,然后开始读取数据,隔100ms左右再次DO(发送给usb一个数据包),再读一些数据(DI) 
    我怎样编程实现这个功能呢? 
    先WriteFile模拟DO过程?然后ReadFile模拟DI过程,这样可以么?如果可以,应该具体怎么做呢?
      

  4.   

    HID是标准设备类
    学习的话先从协议开始吧。
    www.usb.org去下个HID的datasheet,把应用层协议搞明白了。
      

  5.   

    楼主不知道GUID怎么打开usb设备?
      

  6.   

    如果能向设备厂商取得HID接口的相关资料是最快的,清楚每个命令和数据格式的作用才利于控制设备,如果要不到的话只能自己模拟,用BUSHOUND对比了。