windows WinUSB应用程序或用户模式驱动程序作为USB分析/嗅探器/趋势的过滤器驱动程序

olmpazwi  于 7个月前  发布在  Windows
关注(0)|答案(4)|浏览(71)

一个问题,也许有些谁曾广泛使用WinUSB API或用户模式USB驱动程序-可以WinUSB API或用户模式驱动程序被用作USB连接的被动观察者,捕捉中断,控制请求,数据传输的通知,而不干扰其它应用(例如iTunes),这显然需要在我的应用程序监视连接并在其上显示数据的同时并发访问设备?
或者你几乎必须写一个内核模式的过滤器驱动程序,并注入自己的USB堆栈,以使之发生?
在过去,有一些可靠的选择(具体来说是libusb-win32和usbsnoop),尽管它们都是围绕旧的DDK构建的,而不是Windows Driver Foundation,并且不再定期支持。因此,我不太愿意围绕它们构建一些重要的东西。

zi8p0yeb

zi8p0yeb1#

你必须写一个过滤器驱动程序。没有其他方法可以拦截其他设备产生的流量。你可以使用更新版本的DDK,也就是说,Kendash来完成这项任务。它会让你的生活更轻松。但我认为仅仅获得一个硬件总线分析器会更便宜,更有效。
a good overview by OSR。你必须登录才能阅读这篇文章,但我强烈建议无论如何都要登录,如果你要做任何内核模式的开发。

qkf9rpyu

qkf9rpyu2#

Windows 7中的核心USB驱动程序具有ETW跟踪点,因此您可以通过这种方式嗅探流量(博客文章 ETW in the Windows 7 USB core stack),但它有点笨拙,并且有一些限制,例如只能跟踪每个数据包的前32个字节。
我已经做了一个USB过滤器驱动程序(KNOW),这是非常容易使用(恕我直言):http://code.google.com/p/busdog/

8qgya5xd

8qgya5xd3#

USB嗅探器允许您显示,记录和分析连接到PC和应用程序的任何USB设备之间传输的所有数据。您还可以恢复传输的数据(对于某些文件类型)。
最终的项目包括这样的组件:驱动程序,公共库,GUI. http://tellmeword.com/5zu2z5

8yoxcaq7

8yoxcaq74#

对于任何人登陆这个问题,值得注意的是,Wireshark使用了https://desowin.org/usbpcap/这个目的。

相关问题