C# Windows Store 应用程序为 UsbDevice 返回 null
Posted
技术标签:
【中文标题】C# Windows Store 应用程序为 UsbDevice 返回 null【英文标题】:C# Windows Store app returning null for UsbDevice 【发布时间】:2015-02-25 14:07:22 【问题描述】:作为 Windows 应用商店应用开发的新手,我正在开发一个必须连接到多个 USB 设备的应用。我正在使用带有 C# 的 VS 2013(社区)。
例如,使用以下方式获取附加网络摄像头的列表:
var devices = await DeviceInformation.FindAllAsync(DeviceClass.VideoCapture);
这确实为我提供了附加网络摄像头的列表。 要访问第一个设备,应使用以下命令创建 UsbDevice 对象:
DeviceInformation device = devices[0];
UsbDevice usbDevice = await UsbDevice.FromIdAsync(device.Id);
但是,对象 usbDevice 始终为空... 我已经用几种设备(不同的网络摄像头、鼠标、闪存驱动器等)尝试过这个
关于如何解决此问题或是否有替代此方法的任何建议?
【问题讨论】:
【参考方案1】:您提到的设备都是众所周知的设备类型,它们通过更具体的类(例如网络摄像头的 MediaCapture)使用。它们不使用winusb.sys 驱动程序,并且无法使用用于通用设备的 Windows.Devices.Usb 命名空间进行控制。
来自MSDN documentation for Windows.Devices.Usb:
Windows.Devices.Usb 定义了 Windows 运行时类,Windows 商店应用程序可用于与不支持的 USB 设备进行通信 属于设备类,或 Microsoft 不为其提供 内置驱动程序。
【讨论】:
好的,谢谢。因此,为了控制网络摄像头,我应该使用 MediaCapture,而对于我的自定义设备,我将使用上述方法。以上是关于C# Windows Store 应用程序为 UsbDevice 返回 null的主要内容,如果未能解决你的问题,请参考以下文章
WIN10 Windows store应用商店无法安装打开UWP应用解决方案
从默认 iOS App Store 链接中删除“/us/”?