USBIP解读及源码分析
+ -

USBIP 获取集线器端口设备描述符IOCTL_USB_GET_DESCRIPTOR_FROM_NODE_CONNECTION

2023-10-19 30 0
您好,该文仅对付费用户可见,请开通VIP会员
HID人机交互QQ群:564808376    UAC音频QQ群:218581009    UVC相机QQ群:331552032    BOT&UASP大容量存储QQ群:258159197    STC-USB单片机QQ群:315457461    USB技术交流QQ群2:580684376    USB技术交流QQ群:952873936   

0 篇笔记 写笔记

USB2.0 SETUP令牌包
SETUP令牌包用于主机向USB设备发送配置信息SETUP令牌包结构SETUP令牌包格式由8位的包标识字段PID,7位的地址字段ADDR、4位的端点字段和5位的循环字段CRC共24位3字节组成。包标识字段PID:定义了数据传输方向为USB主机到USB设备。ADDR字段:指明了USB设备地址。E......
使用SetupApi函数通过GUID枚举系统中所有关联设备
Windows的设备在驱动中大部分都会IoSetRegisterInterface,这其中一个重要的参数是GUID,这样系统会根据这个GUID给设备创建一个symbolicname,这个名字在应用层可以通过CreateFile打开。这里分享一个在应用层通过SetuApi枚举该类型GUID下的所有设备......
使用WinUSB读写USB设备
Windows为WinUSB设备提供了API,主要通过以下几个步骤访问设备。通过扩展描述符中的GUID查看接口的路径用接口的路径作为参数,调用CreateFile打开接口使用WinUsb_Initialize得到WinUSB句柄通过WinUsb_WritePipe和WinUsb_ReadPipe对......
windows通过GUID枚举系统中所有USB设备并且显示该设备的所有属性信息
微信群里有同学问怎么获取USB设备的位置信息,这个学名叫做SPDRP_LOCATION_PATHS,刚好自己以前写过这个代码,就分享了一下。代码如下:#include#include #include
Setup事务是由SETUP令牌,数据包和握手包组成的。一个成功的Setup事务保证了Setup令牌和数据包传输的可靠传输。Setup事务是由主机到设备的,并且如果Setup事务含有数据包,必须使用DATA0包。有数据包的SETUP事务可见下图。此SETUP事务使用SETUP令牌包(0xB4)......
打开设备之前,得先枚举到设备,获取到设备的链接名,然后才能通过CreateFile打开设备,与之通讯。设备接口GUID枚举设备是通过winsub驱动的inf文件中的DeviceInterfaceGUIDs来实现的。在WinUSB驱动设备时,会使用该GUID来注册设备接口,所以我们也需要此接口来枚举......
Hid.dll中获取字符串的函数包括以下:HidD_GetProductStringHidD_GetManufacturerStringHidD_GetSerialNumberStringHidD_GetIndexedString这些函数分别通过不同的IOCTL来与HIDCLAS.SYS进行通......
主要还是SetupAPI函数的封装#include //获取设备的实例路径HRESULTRetrieveDevicePath( _Out_bytecap_(BufLen) LPTSTR DevicePath, _In_ ......
GetHubDescriptor用于获取USB集线器类描述符bmRequestTypebRequestwValuewIndexwLengthData10100000B(0xa0)GET_DESCRIPTOR(0x06)Descriptor Type and Descr......
话不多说,直接使用可以正常运行的。#include #include #include #include #include #inclu......
URB_FUNCTION_GET_DESCRIPTOR_FROM_DEVICEUSB设备枚举过程中,需要获取USB相关的描述符。这些描述符一般包括USB设备描述符,USB配置描述符,USB字符串描述符。USBIP获取描述符通过store_urb_get_dev_desc来实现。static NTS......
USB_DEFAULT_PIPE_SETUP_PACKET结构体对应用USB标准请求的SETUP令牌包的8字节。可以使用该结构体描述符Setup令牌包的详细信息。//// Chapter 9 USB Device Framework////// USB 1.1: 9.3 USB Dev......
static NTSTATUSstore_urbr_submit(PIRP irp, struct urb_req *urbr){... case IOCTL_USB_GET_DESCRIPTOR_FROM_NODE_CONNECTION: status = store......
获取USB相关描述符通过IOCTL_USB_GET_DESCRIPTOR_FROM_NODE_CONNECTION返回。PAGEABLE NTSTATUSvhci_ioctl_vhub(pvhub_dev_t vhub, PIRP irp, ULONG ioctl_code, PVOID buf......
关注公众号
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!