///

/// 获取设备父系

///

///

///

private static bool TryGetDriverIdParent(string driver, out string resultDeviceID)

{

resultDeviceID = "";

try

{

int CM_LOCATE_DEVNODE_NORMAL = 0x00000000;

int CR_SUCCESS = 0x00000000;

UInt32 parentInst;

;

;

int apiResult = Win32.CM_Locate_DevNodeA(ref curInst, driver, CM_LOCATE_DEVNODE_NORMAL);

if (apiResult != CR_SUCCESS)

{

return false;

}

apiResult = Win32.CM_Get_Parent(out parentInst, (UInt32)curInst, CM_LOCATE_DEVNODE_NORMAL);

if (apiResult != CR_SUCCESS)

{

return false;

}

apiResult = Win32.CM_Get_Device_ID_Size(out pLen, parentInst, CM_LOCATE_DEVNODE_NORMAL);

if (apiResult != CR_SUCCESS)

{

return false;

}

];

//获取设备id字符串地址

apiResult = Win32.CM_Get_Device_ID(parentInst, ptrInstanceBuf, pLen, );

if (apiResult != CR_SUCCESS)

{

return false;

}

resultDeviceID = new string(ptrInstanceBuf);

return true;

}

catch (Exception ecException)

{

LogHelper.WriteErrorLog("获取父代" + ecException.Message, ecException);

return false;

}

}

[DllImport("setupapi.dll", SetLastError = true)]

public static extern int CM_Locate_DevNodeA(ref int pdnDevInst, string pDeviceID, int ulFlags);

[DllImport("setupapi.dll")]

public static extern int CM_Get_Parent(out UInt32 pdnDevInst, UInt32 dnDevInst, int ulFlags);

[DllImport("setupapi.dll", SetLastError = true)]

);

[DllImport("setupapi.dll", CharSet = CharSet.Unicode)]

public static extern int CM_Get_Device_ID(UInt32 dnDevInst, char[] buffer, int bufferLen, int flags);

java父系调用子系,获取usb设备父系或子代相关推荐

  1. C# 获取USB设备信息

    WMI方式 using System; using System.Management; using System.Text.RegularExpressions; using System.Coll ...

  2. libusb获取usb设备的idVendor(vid),idProduct(pid),以及Serial Number

    发表于2015/6/23 21:55:11  4594人阅读 最近在做关于usb设备的项目,用到了libusb,发现关于这个的函数库的介绍,讲解很少,下面仅仅是简单展示一些基本的使用方法,以备后用. ...

  3. 基于WMI获取USB设备信息(即获取插即用设备信息)System.Management.ManagementObjectSearcher--ManagementObjectCollection

    基于WMI获取USB设备信息(即获取插即用设备信息)System.Management.ManagementObjectSearcher--ManagementObjectCollection 获取P ...

  4. java获取usb设备的相关信息

    我从上上个礼拜开始接触,公司需要,所以开始在网上搜索相关资料,但是都没有找到合适的范例,但万幸终于测试出合适的代码. import java.io.UnsupportedEncodingExcepti ...

  5. Android获取USB设备信息

    一.通过路径查询 cat /proc/bus/input/devices 二.使用UsbManager获取插入手机的USB设备名字 private void getDevice() {UsbManag ...

  6. linux 查看libusb版本,linux / libusb获取usb设备路径

    我使用libusb来枚举一些usb设备.现在我想获得"设备路径".我认为这不是usb device-path,因为我没有成功使用谷歌. 如果我用linux连接usb设备,我会在dm ...

  7. java程序调用Oracle 存储过程 获取返回值(无返回,非结果集,结果集)

    oracle中procedure是不能有返回值的,要想返回值,就得有输出参数,同样要想返回记录集,可以把游标类型作为输出参数. 下面是详细情况说明: 一:无返回值的存储过程调用 存储过程: creat ...

  8. linux脚本获取usb设备,Linux基于USB端口执行脚本

    您应该弄清楚您的外部端口与哪个USB总线连接.在我的电脑上所有外部USB端口都连接到Bus 01 要做这个检查lsusb -t的输出,然后附上一个usb设备并再次检查输出lsusb -t.那么你知道什 ...

  9. C# 获取USB设备列表

    窗体设计及运行效果图 添加CyUSB.dll引用(如果需要识别由CyUSB.sys提供设备驱动的USB设备) 源码: public partial class Form1 : Form     {   ...

最新文章

  1. TensorFlow中的ResNet残差网络实战(1)
  2. shell介绍及基本用法
  3. Alt + sysrq + REISUB doesn't reboot my laptop
  4. 【转载】register、volatile、restrict 三关键字的用法
  5. python用途与前景-2019年Python就业及发展前景如何 看完你就清晰了
  6. 算法杂货铺——分类算法之朴素贝叶斯分类(Naive Bayesian classification)
  7. 黑马程序员pink老师前端入门教程,零基础必看的h5(html5)+css3+移动端前端视频教程(学成在线)
  8. 全局变量,extern和static以及命名空间的区别
  9. linux源码acl,Linux自主访问控制机制模块详细分析之posix_acl.c核心代码注释与acl.c文件介绍...
  10. flink其他可选api
  11. 机器学习--线性回归4(线性拟合、局部线性拟合实战)
  12. 国内著名声学期刊简介
  13. 【第008问 Unity中什么是UV?】
  14. VIJOS P1540 月亮之眼
  15. Linux下的sock_stream和sock_dgram
  16. java23种设计模式面试常被问到的单利模式讲解
  17. OpenGL: gluLookAt函数的含义
  18. MOS管驱动电路隔离技术
  19. Sorry, but pdflatex did not succeed
  20. 谷歌pixel3axl开发者模式_谷歌彻底取消开发者大会!安卓版微信“暗黑模式”要来了...

热门文章

  1. leetcode 36. Valid Sudoku | 37. Sudoku Solver(数独)
  2. 汇编语言 修改显存 在屏幕上显示图案
  3. 12个月大厂主机免费领AWS Azure Google-Cloud还不快到碗里来
  4. ae灯光插件_AE教程|Particular粒子插件全面讲解介绍官方视频教程 「中文字幕」...
  5. C++实现字符串分割函数split()
  6. 洛谷——P1181 数列分段Section I
  7. 【简洁写法】剑指 Offer 32 - I. 从上到下打印二叉树
  8. 【最优解法】1054 求平均值 (20分)_31行代码AC
  9. 【图示,简单明了】HttpServlet中getAttribute和getParameter的区别——【javaweb系列学习笔记】
  10. Python数据结构学习笔记——队列和双端队列