php读取usb设备信息,急,请问如何获取USB设备的路径,非HID类型
用这个函数试试
//GetDeviceViaInterface:Open a handle via a device interface
HANDLE GetDeviceViaInterface( GUID* pGuid, DWORD instance)
{
// Get handle to relevant device information set
HDEVINFO info = SetupDiGetClassDevs(pGuid, NULL, NULL, DIGCF_PRESENT | DIGCF_INTERFACEDEVICE);
if(info==INVALID_HANDLE_VALUE)
{
printf(\"No HDEVINFO available for this GUID\\n\");
return NULL;
}
// Get interface data for the requested instance
SP_INTERFACE_DEVICE_DATA ifdata;
ifdata.cbSize = sizeof(ifdata);
if(!SetupDiEnumDeviceInterfaces(info, NULL, pGuid, instance, &ifdata))
{
printf(\"No SP_INTERFACE_DEVICE_DATA available for this GUID instance\\n\");
SetupDiDestroyDeviceInfoList(info);
return NULL;
}
// Get size of symbolic link name
DWORD ReqLen;
SetupDiGetDeviceInterfaceDetail(info, &ifdata, NULL, 0, &ReqLen, NULL);
PSP_INTERFACE_DEVICE_DETAIL_DATA ifDetail = (PSP_INTERFACE_DEVICE_DETAIL_DATA)(new char[ReqLen]);
if( ifDetail==NULL)
{
return NULL;
}
// Get symbolic link name
ifDetail->cbSize = sizeof(SP_INTERFACE_DEVICE_DETAIL_DATA);
if( !SetupDiGetDeviceInterfaceDetail(info, &ifdata, ifDetail, ReqLen, NULL, NULL))
{
SetupDiDestroyDeviceInfoList(info);
delete ifDetail;
return NULL;
}
printf(\"Symbolic link is %s\\n\",ifDetail->DevicePath);
// Open file and pipe
HANDLE rv = CreateFile(ifDetail->DevicePath,
GENERIC_READ | GENERIC_WRITE,
FILE_SHARE_READ | FILE_SHARE_WRITE,
NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if( rv==INVALID_HANDLE_VALUE) rv = NULL;
delete ifDetail;
SetupDiDestroyDeviceInfoList(info);
return rv;
}
php读取usb设备信息,急,请问如何获取USB设备的路径,非HID类型相关推荐
- Android专业获取设备信息如:AndroidID、唯一设备ID、制造商、型号、版本号、版本码等
在开发app中很多时候需要获取设备的基本信息等运用到项目中,就需要一些方法获取,网上资源中方法五花八门,有的还获取不到,令人头大,话不多说,鄙人整理了一套方法,话不多说真机测试如下>上图: 接下 ...
- 获取android设备唯一编号_如何获取Android设备唯一标识码教程
ID的全称是(Virtual identity electronic identification),中文名为通用账户,是俗称的网络身份证.它是一种互联网身份认证协议,其具有唯一性和信息不可否认性.I ...
- 是否允许应用获取设备信息_手机权限获取弹窗不断,隐私安全如何确保,这些权限需谨慎...
安卓手机在安装软件的时候,总是会要求获取各种权限,除了一些必要权限外,有时还会索要一些敏感权限,如:电话.联系人等权限.工信部也在去年,展开了一次大规模的整顿,,现在很多软件拒绝了权限,也是可以使用的 ...
- 读取服务器内存信息工具,使用Sigar获取服务器内存、IP、CPU、IO、MAC地址、操作系统等信息......
sigar linux 文件和windows文件和sigar的jar包 链接: https://pan.baidu.com/s/1bGrupzmaOAjLEUE0gp6DmA 提取码: gj31 工具 ...
- Android 手机设备信息获取使用详解
Android 手机是我们常用的工具之一,买手机之前,手机厂商会提供一些手机参数给我们,那么问题来了,我们该如何获取手机上的参数信息呢? 通过本文你讲了解到获取手机常用信息的基本方法. 获取手机基本信 ...
- C# 获取USB设备信息
WMI方式 using System; using System.Management; using System.Text.RegularExpressions; using System.Coll ...
- 基于WMI获取USB设备信息(即获取插即用设备信息)System.Management.ManagementObjectSearcher--ManagementObjectCollection
基于WMI获取USB设备信息(即获取插即用设备信息)System.Management.ManagementObjectSearcher--ManagementObjectCollection 获取P ...
- 痞子衡嵌入式:可通过USB Device Path来唯一指定i.MXRT设备进行ROM/Flashloader通信
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是通过USB Device Path来唯一指定i.MXRT设备进行ROM/Flashloader通信. i.MXRT系列高性能微控制器从2 ...
- Linux内核驱动开发-USB热插拔信息调取
前言: 前段时间上科大嵌入式安卓开发溜了个作业,开发一个驱动,可以实现读取USB热插拔信息,程序调用显示USB设备名称和插拔时间.代码已经放在了我的Github上,供大家参考. 思路: USB热插拔的 ...
最新文章
- 伍六七带你学算法 入门篇 ——最大子序和
- CSS基本选择器、层次选择器、结构伪类选择器、属性选择器
- UVA 11136——Hoax or what
- day44-前端知识之HTML内容
- android与ndk交互,NDK-JNI与Java的交互 hello-world
- android_Media
- Jamovi 教程:比SPSS还好用的统计软件,强烈安利
- 什么是DHCP(中继模式)
- 安装VTN协调器操作步骤
- python数据分析——网络流量的一些特性
- GO 中 Chan 实现原理分享
- Android 当EditextText失去焦点,或者点击Activity的时候关闭软键盘或者其他布局
- sql语句操作(2)
- bzoj4399 魔法少女LJJ 线段树合并
- 面向对象分析与设计的底层逻辑
- SAP概念之利润中心(Profit Center)
- IEEE之后,学术政治化会成为人类的“潘多拉魔盒”吗?
- python套用word模板_Python3操作Office之Word模板技术
- RTX3060配什么主板好 RTX3060配什么cpu
- LTSPICE显示模型参数