c# 如何捕获usb向pc发送数据

时间:2024-10-24 06:58:53

1、获取一个指定类别或全部类别的所有已安装设备的信息 [DllImport("setupapi.dll", SetLastError = true)] private static extern IntPtr SetupDiGetClassDevs(ref Guid ClassGuid, uint Enumerator, IntPtr HwndParent, DIGCF Flags);

c# 如何捕获usb向pc发送数据

2、枚举指定设备信息集合的成员,并将数据放在SP_DEVINFO_DATA中 [DllImport("setupapi.dll", SetLastError = true)] private static extern bool SetupDiEnumDeviceInfo(IntPtr DeviceInfoSet, uint MemberIndex, SP_DEVINFO_DATA DeviceInfoData);

c# 如何捕获usb向pc发送数据

3、获取设备的接口 [DllImport("setupapi.dll", SetLastError = true, CharSet = CharSet.Auto)] private static extern bool SetupDiEnumDeviceInterfaces(IntPtr deviceInfoSet,SP_DEVINFO_DATA deviceInfoData,ref Guid interfaceClassGuid,int memberIndex,SP_DEVICE_INTERFACE_DATA deviceInterfaceData);

c# 如何捕获usb向pc发送数据

4、// 获取接口的详细信息 必须调用两次 第1次返回长度 第2次获取数据 [DllImport(&孥恶膈茯quot;setupapi.dll&鳎溻趄酃quot;, SetLastError = true, CharSet = CharSet.Auto)] private static extern bool SetupDiGetDeviceInterfaceDetail(IntPtr deviceInfoSet,SP_DEVICE_INTERFACE_DATA deviceInterfaceData,IntPtr deviceInterfaceDetailData,int deviceInterfaceDetailDataSize,ref int requiredSize,SP_DEVINFO_DATA deviceInfoData);

c# 如何捕获usb向pc发送数据

5、获取指定设备的属性 [DllImport("setupapi.dll", SetLastError = true)] private static extern bool SetupDiGetDeviceRegistryProperty(IntPtr DeviceInfoSet, SP_DEVINFO_DATA DeviceInfoData, SPDRP Property, uint PropertyRegDataType, StringBuilder PropertyBuffer, uint PropertyBufferSize, IntPtr RequiredSize);

c# 如何捕获usb向pc发送数据

6、获取USB接口信息 [DllImport("hid.dll")] private static extern void HidD_GetHidGuid(ref Guid HidGuid); [DllImport("kernel32.dll", SetLastError = true)] private static extern SafeFileHandle CreateFileA(string lpFileName, uint dwDesiredAccess, uint dwShareMode, IntPtr lpSecurityAttributes, uint dwCreationDisposition, uint dwFlagsAndAttributes, IntPtr hTemplateFile);

© 手抄报圈