C# 如何在运行LibUsbDotNet的.NET应用程序中填充UsbRegDeviceList;“入门示例”;
当我运行它时,allDevices列表是空的 我启动了一个新的VB.NET控制台项目,并安装了Nuget LibUsbDotNet 我的代码是:C# 如何在运行LibUsbDotNet的.NET应用程序中填充UsbRegDeviceList;“入门示例”;,c#,vb.net,usb,libusb,libusbdotnet,C#,Vb.net,Usb,Libusb,Libusbdotnet,当我运行它时,allDevices列表是空的 我启动了一个新的VB.NET控制台项目,并安装了Nuget LibUsbDotNet 我的代码是: Imports System Imports LibUsbDotNet Imports LibUsbDotNet.Info Imports LibUsbDotNet.Main Imports System.Collections.ObjectModel Module Module1 Public MyUsbDevice As
Imports System
Imports LibUsbDotNet
Imports LibUsbDotNet.Info
Imports LibUsbDotNet.Main
Imports System.Collections.ObjectModel
Module Module1
Public MyUsbDevice As UsbDevice
Public Sub Main(args As String())
' Dump all devices and descriptor information to console output.
Dim allDevices As UsbRegDeviceList = UsbDevice.AllDevices
For Each usbRegistry As UsbRegistry In allDevices
If usbRegistry.Open(MyUsbDevice) Then
Console.WriteLine(MyUsbDevice.Info.ToString())
For iConfig As Integer = 0 To MyUsbDevice.Configs.Count - 1
Dim configInfo As UsbConfigInfo = MyUsbDevice.Configs(iConfig)
Console.WriteLine(configInfo.ToString())
Dim interfaceList As ReadOnlyCollection(Of UsbInterfaceInfo) = configInfo.InterfaceInfoList
For iInterface As Integer = 0 To interfaceList.Count - 1
Dim interfaceInfo As UsbInterfaceInfo = interfaceList(iInterface)
Console.WriteLine(interfaceInfo.ToString())
Dim endpointList As ReadOnlyCollection(Of UsbEndpointInfo) = interfaceInfo.EndpointInfoList
For iEndpoint As Integer = 0 To endpointList.Count - 1
Console.WriteLine(endpointList(iEndpoint).ToString())
Next
Next
Next
End If
Next
' Free usb resources.
' This is necessary for libusb-1.0 and Linux compatibility.
UsbDevice.[Exit]()
' Wait for user input..
Console.ReadKey()
End Sub
End Module
我的桌面USB设备
我相信我的桌面太旧了,虽然我最近升级到Win 10。为了解决这个问题,我使用了新的Win 10笔记本电脑,安装并运行了过滤器(子)驱动程序,选择了笔记本电脑的网络摄像头(作为测试视频和PID),安装了libUsb-Win32,创建了一个.NET控制台项目(我做了VB和C),做了VS>proj>Refs>NUGET>浏览了LibUsbDotNet,安装了它,粘贴了Sourceforge的LibUsbDotNet的第一个示例,它工作得很好:它连接到网络摄像头驱动程序(由过滤器子驱动程序选择),并读取正确的视频和PID。(示例报告了错误,因为网络摄像头驱动程序没有响应轮询,但这是意料之中的)。那么控制面板>设备管理器会怎么说?您插入了一些USB设备?如果您以管理员身份运行Visual Studio,有什么区别吗?有。添加了上面的列表。。。我将尝试VS作为adminVS作为Admin没有效果…仍然没有设备列表。驱动程序开发人员将编码返回错误代码。保留那台旧机器,只要把顾客得到同样东西的那一天关起来就行了。正如你所说,虽然这将更容易涵盖在“最低PC要求”中。