C#Windows应用商店应用程序为UsbDevice返回空值

C#Windows应用商店应用程序为UsbDevice返回空值,c#,null,windows-store-apps,usb,C#,Null,Windows Store Apps,Usb,作为Windows应用商店应用程序开发的新手,我正在开发一个必须连接到多个USB设备的应用程序。我将VS2013(社区)与C#一起使用 例如,连接的网络摄像头列表可通过以下方式获得: var devices = await DeviceInformation.FindAllAsync(DeviceClass.VideoCapture); 这确实给了我一个附加网络摄像头的列表。 要访问第一个设备,应使用以下方法创建UsbDevice对象: DeviceInformation device = d

作为Windows应用商店应用程序开发的新手,我正在开发一个必须连接到多个USB设备的应用程序。我将VS2013(社区)与C#一起使用

例如,连接的网络摄像头列表可通过以下方式获得:

var devices = await DeviceInformation.FindAllAsync(DeviceClass.VideoCapture);
这确实给了我一个附加网络摄像头的列表。 要访问第一个设备,应使用以下方法创建UsbDevice对象:

DeviceInformation device = devices[0];
UsbDevice  usbDevice = await UsbDevice.FromIdAsync(device.Id);
但是,对象usbDevice始终为空。。。 我曾用几种设备(不同的网络摄像头、鼠标、闪存驱动器等)尝试过这一点


关于如何解决此问题或是否有替代方法的任何建议?

您提到的设备都是众所周知的设备类型,可通过更具体的类(例如网络摄像头的MediaCapture)使用。它们不使用驱动程序,并且无法使用用于通用设备的Windows.Devices.Usb命名空间进行控制

从:

Windows.Devices.Usb定义Windows运行时类 商店应用程序可用于与未连接的USB设备通信 属于某个设备类,或Microsoft未为其提供 机箱内驱动程序


好的,谢谢。因此,为了控制网络摄像头,我应该使用MediaCapture,对于我的自定义设备,我将使用上述方法。