我正在读取具有URB类型的USB数据包。在http://msdn.microsoft.com/en-us/library/windows/hardware/ff540409(v=vs.85).aspx定义为
的URB头 struct _URB_HEADER {
USHORT Length;
USHORT Function;
USBD_STATUS Status;
PVOID UsbdDeviceHandle;
ULONG UsbdFlags;
};
我应该为PVOID读取多少位?
由于这是指针类型,因此它取决于您的平台。32位用于x86;64位用于x64。
我不是很精通这些库,但是你应该使用这些字段吗?你分享的链接写着"保留"。不要使用。
编辑:忽略最后一句话。我刚刚意识到结构只是头部。当然,你需要知道磁场的大小,这样才能得到物体。:)
感谢您的评论-阅读它们,看起来像使用
byte [] ptr_bytes = rdr.ReadBytes(System.IntPtr.Size);
将根据操作系统正确提供指针的大小。