2009-08-30 29 views
4

可能有些人已经广泛使用WinUSB API或用户模式USB驱动程序的问题 - 可以使用WinUSB API或用户模式驱动程序作为USB连接的被动观察者,捕获中断,控制请求,数据传输等的通知,而不会干扰其他应用程序(如iTunes),这些应用程序显然需要同时访问设备,同时我的应用程序正在监视连接并在其上显示数据?WinUSB应用程序或用户模式驱动程序作为USB分析/嗅探器/趋势的过滤器驱动程序

或者你是否必须编写一个内核模式过滤器驱动程序,并将自己注入USB堆栈以实现这一目标?

过去,有一些可信的选项(libusb-win32和usbsnoop是具体的),虽然它们都是围绕旧的DDK构建的,而不是Windows Driver Foundation,并且不是经常支持任何更多。结果,我很犹豫要在他们周围建立一些重要的东西。

+0

我越想越觉得它越不可能。我可能需要内核中的过滤器驱动程序.... – Bob 2009-08-30 19:08:09

+1

你有没有得到任何与此? – frankster 2010-02-23 01:10:51

回答

4

您必须编写过滤器驱动程序。拦截其他设备生成的流量没有其他方法。您可以使用更新版本的DDK,即KMDF来完成此任务。它会让你的生活更轻松。但是我认为只有获得硬件总线分析仪才会更便宜,更有效。

a good overview by OSR。您必须登录才能阅读此内容,但如果您要开展任何内核模式开发,我强烈建议您登录。

2

在Windows的核心USB驱动程序  7有ETW跟踪点,这样你就可以嗅出交通这种方式(博客文章ETW in the Windows 7 USB core stack),但它是一个有点缺憾,有只喜欢跟踪的前32个字节的一些限制每个数据包。

我已经做了USB过滤器驱动程序(KMDF),这是非常容易使用(恕我直言):http://code.google.com/p/busdog/

+2

哦,这是你的司机!它使我的系统崩溃,我花了9个小时修复了操作系统。它是http://code.google.com/p/busdog/上的最后一个版本吗? – 2011-05-29 17:09:05

0

USB嗅探器允许您显示,记录和分析连接到任何USB设备之间传输的所有数据的PC和应用程序。您也可以恢复传输的数据(对于某些文件类型)。

结果项目包括这样的组件:驱动程序,公共库,GUI。 http://tellmeword.com/5zu2z5

+0

链接被破坏... – 2015-04-06 21:51:07

+0

有更新链接https://tellmeword.com/5zu2z5/usb_monitor_(sniffer) – deype0 2015-04-08 07:41:21

相关问题