我正在开发一个UWP示例应用程序,该应用程序通过USB将Windows桌面连接到android设备。我正在使用UsbDevice类。我可以成功发现设备并获取设备对象(即与设备建立连接)。但是当我尝试发送控制传输数据包时,即在此行,“ device.SendOutControlTransferAsync(initSetupPacket);” 我得到这个: 抛出异常:System.Private.CoreLib.ni.dll中的“ System.Exception” System.Private.CoreLib.ni.dll中发生类型为“ System.Exception”的异常,但未在用户代码中处理 连接到系统的设备不起作用。 (来自HRESULT的异常:0x8007001F)
此错误的原因可能是什么?我尝试更新USB驱动程序,重新启动系统,尝试其他Android设备。还是没有运气。
string aqs = UsbDevice.GetDeviceSelector(vid, pid);
var myDevices = await
Windows.Devices.Enumeration.DeviceInformation.FindAllAsync(aqs, null);
if (myDevices.Count == 0)
{
ShowError("Device not found!");
return;
}
//get the device object
UsbDevice device = await UsbDevice.FromIdAsync(myDevices[0].Id);
// Send a control transfer.
UsbSetupPacket initSetupPacket = new UsbSetupPacket()
{
Request = initRequest,
RequestType = new UsbControlRequestType() {
Recipient = UsbControlRecipient.DefaultInterface,
ControlTransferType = UsbControlTransferType.Vendor
}
};
await device.SendOutControlTransferAsync(initSetupPacket);