C#使用LibUsbDotNet实现USB设备检测
学习记录。
首先,通信流程我们先撸一边,打开USB设备-》发送数据库-》接受数据-》关闭USB设备
根据USB规范的规定,所有的USB设备都有供应商ID(VID)和产品识别码(PID),主机通过不同的VID和PID来区别不同的设备。
下面由我来对这个库的使用进行说明,目前,我们可以从 Github 以及 SourceForge 上下载对应的项目
LibUsbDotNet C# USB Library download | SourceForge.net
下载后是一个可执行文件,我们点击安装即可,它会安装好相关的库以及驱动文件,默认的安装目录为:C:\Program Files\LibUsbDotNet。在安装完成后,它会提示我们进入下面的对话框,这一步的目的是给特定的设备安装 libusb 驱动,因为只有安装了驱动的情况下,接下来的一切才会发生,除非 LibUsbDotNet 会隔空取物。
这里,我们还是选择鼠标这个硬件,你需要重点关注 PID 以及 VID 两个参数,因为这是唯一能区分不同 USB 设备的标识:
最后,点击 “Install” 按钮即可为当前设备安装 libusb 驱动。接下来的事情就变得非常简单啦,我们只需要通过 NuGet 安装。
第一步 nuget下载并安装 LibUsbDotNet;
第二步 查看所需打开设备的PID和VID
方法一:电脑上查看
方法二:代码查看
using System; using LibUsbDotNet; using LibUsbDotNet.Main; namespace LibUSBDemo { class Program { static void Main(string[] args) { GetUSBInfo(); Console.ReadLine(); } public static void GetUSBInfo() { UsbRegDeviceList allDevices = UsbDevice.AllDevices; Console.WriteLine("Found {0} devices", allDevices.Count); foreach (UsbRegistry usb in allDevices) { Console.WriteLine("----------------"); Console.WriteLine($"Device info: {usb.Device.Info.ProductString}"); Console.WriteLine($"Pid: { usb.Pid}, VID: {usb.Vid}"); } Console.WriteLine(allDevices.Count); } } }
到此这篇关于C#使用LibUsbDotNet实现USB设备检测的文章就介绍到这了,更多相关C# LibUsbDotNet USB设备检测内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
c#调用arcgis地图rest服务示例详解(arcgis地图输出)
ArcGIS REST API提供了简单、开放的接口来访问和使用ArcGIS Server发布的服务。使用ArcGIS REST API通过URL可以获取和操作每一个服务中的所有资源和操作2013-12-12Visual Studio中根据系统区分引用64位、32位DLL动态库文件的配置方法
这篇文章主要介绍了Visual Studio中根据系统区分引用64位、32位DLL动态库文件的配置方法,本文在VS2008中测试通过,其它VS版本可以参考下2014-09-09
最新评论