USB Monitor allows you to display, record and analyze all the data transferred between any USB device connected to your PC and applications. Also you can recover transferred data (for some file types).
The resulted project includes such components: Driver, Common library, GUI.
Language: CFilter driver is a driver, which is inserted into the existing driver stack to perform record function (collect URB packets*). A filter driver does not affect the normal working of the existing driver stack in any major way.
*URB packet is USB request block that contains data to be transferred to/from USB device.
Language: C++ Using: STL (Standard Template Library)Main purpose is to get data from filter driver.Includes:
Language: C++ Using: STL (Standard Template Library), MFC (Microsoft Foundation Classes)Includes:
Development environment: Visual Studio 2008 + DDK;Debugger: WinDbg for kernel mode, VS2008 inbuilt debugger for user mode. Libraries: STL, MFC