spice-gtk支持windows客户端下的usb重定向功能是通过winusb驱动实现,但是winusb和usbstore驱动不能同时存在,所以spice-gtk通过usb-clerk服务来安装卸载winusb驱动来实现。参考http://permalink.gmane.org/gmane.comp.lib.libusbx.devel/132
usbclerk源码http://cgit.freedesktop.org/~agilboa/usbclerk/
git clone git://people.freedesktop.org/~agilboa/usbclerk
通过vc编译,生成usbclerk.exe
注册/取消注册usbclerk服务,usbclerk install/usbclerk uninstall
启动usbclerk服务,找到USB Clerk服务,并启动
libwdi源码http://sourceforge.net/projects/libwdi/
通过vc编译,生成libwdi.dll,注意需要设置一些库文件的路径
将libwdi.dll和一些辅助的库文件放入合适的路径。
测试usbclerk机libwdi.dll的正确性
插入u盘,查找对应的pid,vid;
通过usbclerktest vid:pid,看安装驱动是否成功;
通过usbclerktest /u vid:pid,看卸载驱动是否成功;
如果成功,则大功告成