枚举系统中所有硬件设备


-
虽然简单,但是实用 HDEVINFO hDevInfo; SP_DEVINFO_DATA DeviceInfoData; DWORD i,j; int ret=0; hDevInfo = SetupDiGetClassDevs((LPGUID) &GUID;_DEVCLASS_MOUSE, 0, 0,DIGCF_PRESENT);//DIGCF_PROFILE);// /* GUID_DEVCLASS_FDC软盘控制器 GUID_DEVCLASS_DISPLAY显示卡 GUID_DEVCLASS_CDROM光驱 GUID_DEVCLASS_KEYBOARD键盘 GUID_DEVCLASS_COMPUTER计算机 GUID_DEVCLASS_SYSTEM系统 GUID_DEVCLASS_DISKDRIVE磁盘驱动器 GUID_DEVCLASS_MEDIA声音、视频和游戏控制器 GUID_DEVCLASS_MODEMMODEM GUID_DEVCLASS_MOUSE鼠标和其他指针设备 GUID_DEVCLASS_NET网络设备器 GUID_DEVCLASS_USB通用串行总线控制器 GUID_DEVCLASS_FLOPPYDISK软盘驱动器 GUID_DEVCLASS_UNKNOWN未知设备 GUID_DEVCLASS_SCSIADAPTERSCSI 和 RAID 控制器 GUID_DEVCLASS_HDCIDE ATA/ATAPI 控制器 GUID_DEVCLASS_PORTS端口(COM 和 LPT) GUID_DEVCLASS_MONITOR监视器 */ if (hDevInfo == INVALID_HANDLE_VALUE){ // Insert error handling here. // return ; } // Enumerate through all devices in Set. DeviceInfoData.cbSize = sizeof(SP_DEVINFO_DATA); for (i=0;SetupDiEnumDeviceInfo(hDevInfo,i,&DeviceInfoData;);i++) { DWORD DataT; //LPTSTR buffer = NULL; char buffer[2048]; DWORD buffersize =sizeof(buffer); while (!SetupDiGetDeviceRegistryProperty( hDevInfo, &DeviceInfoData;, SPDRP_FRIENDLYNAME, &DataT;, (PBYTE)buffer, buffersize, &buffersize;)) { if (GetLastError() == ERROR_INSUFFICIENT_BUFFER) { // Change the buffer size. //if (buffer) LocalFree(buffer); //buffer = (PSP_INF_INFORMATION)LocalAlloc(LPTR,buffersize); // <!--[if !supportEmptyParas]--><!--[endif]--> } else { // Insert error handling here. break; } } if (buffer != NULL && i == 0) { // temp.Format("<光盘驱动器>"); // str += temp; } // temp.Format("<VALUE>%s</VALUE>",buffer); // str += temp; if (buffer) Lo
-
2014-11-27
-
2014-02-04
-
2013-11-08
如何枚举出所有USB设备中找到U盘,并取得其逻辑盘符?_course
2010-11-10在网上查到一段枚举出所有USB设备中找到U盘的代码,但不知道如何把设备与逻辑盘符对应起来? function SetupDiGetClassDevsA(ClassGuid: PGUID; const
如何枚举出当前计算机的硬件配置(主板,显卡等硬件信息)_course
2002-03-30如何枚举出当前计算机的硬件配置(主板,显卡等硬件信息)
如何枚举所有HID设备?_course
2012-07-21SetupDiGetClassDevs这个函数调用一次只能获取一个HID的设备吧?如果要在所有HID设备中查找其中一个符合条件的设备要怎么写??
2.7MB
枚举USB设备(C++)
2012-11-20对本地计算机USB设备的枚举,测试通过,很实用。
1.4MB
枚举所有设备
2014-07-04该工具使用delphi开发,用来枚举当前系统上所有设备的名称,class GUID , hardware ID等硬件设备信息
3KB
枚举USB设备接口(C++源代码)
2008-11-12c++ 实现枚举USB设备接口 涉及函数: SetupDiGetClassDevs SetupDiEnumDeviceInterfaces SetupDiGetDeviceInterfaceDetai
2KB
枚举电脑特定usb设备
2017-04-24通过枚举电脑上所有接口设备,并精确查找出所需的usb设备信息(id,名称,注册号等)
枚举USB设备,找到了需要的设备,怎么去打开设备!_course
2011-10-14RT,我通过Setupdi 函数去枚举的,找到了我需要的设备,但是不知道怎么去CreateFile,第一个参数不知道填什么值! 网上有人说用实例ID,用了但是返回 3,路径不正确! 哪位大大做过,知道
观察到一个现象:usb HID设备在成功枚举完了之后就与主机不通讯了,怎么重新开始通讯呢?_course
2016-04-16stm32f103zet6,开发环境mdk517,用的是st官方给的hid的键盘的例程,usb能成功被枚举,而且显示有一个标准的输入设备,但是我再debug模式下起初在枚举阶段我能看到在中断函数中设置的中断点出停下来,说明主机给设备发了一些东西,但是当主机成功枚举之后,pc上显示这个设备运转正常,这个时候再在中断函数中任何地方设置断点都没有作用,也就是说这时主机就没有给设备发in包,那岂不是直接忽略了这个设备了?那这个设备的动作怎么发到主机上啊?我试过从设备管理器中禁用设备时,设备有发生中断,启用时也是,但是不管时就没数据交流,那么要实现鼠标的功能的话,鼠标动了主机根本不知道啊,怎么搞?
111.65MB
DirectX修复工具V4.0增强版
2020-06-13DirectX修复工具(DirectX Repair)是一款系统级工具软件,简便易用。本程序为绿色版,无需安装,可直接运行。 本程序的主要功能是检测当前系统的DirectX状态,如果发现异常则进行修复
23KB
自考项目论证与评估 --在线作业.docx
2020-07-15在线作业要求: 从一下题目中选择5道题目论述。 1. 结合实际项目案例,说明组织是如何开展项目论证与评估来支持决策的?开展了哪些具体方面的论证与评估? 2. 结合一个实际项目案例,对项目生命周期进行划
Java小白修炼手册
2019-12-28Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。 课程讲从零开始讲解Java 语言,小白快速入门学习的必修课!
68B
JAVA上百实例源码以及开源项目
2016-01-03百度云盘分享 简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级、中级、高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情、执着,
-
学院
自动化测试Python3+Selenium3+Unittest
自动化测试Python3+Selenium3+Unittest
-
博客
炼丹手册
炼丹手册
-
博客
张量的空间操作
张量的空间操作
-
下载
液晶显示器色度特征化的分空间补偿模型
液晶显示器色度特征化的分空间补偿模型
-
博客
JNA之Callback回调
JNA之Callback回调
-
学院
Glasterfs 分布式网络文件系统
Glasterfs 分布式网络文件系统
-
下载
宅米网性能优化实践——初创互联网公司的野蛮成长
宅米网性能优化实践——初创互联网公司的野蛮成长
-
学院
Amoeba 实现 MySQL 高可用、负载均衡和读写分离
Amoeba 实现 MySQL 高可用、负载均衡和读写分离
-
学院
基于Flink+Hudi构建企业亿级云上实时数据湖教程(PC、移动、小
基于Flink+Hudi构建企业亿级云上实时数据湖教程(PC、移动、小
-
学院
access应用的3个开发实例
access应用的3个开发实例
-
博客
SQL基础【十一、分页 limit top rownum】
SQL基础【十一、分页 limit top rownum】
-
下载
设计模式的前奏----UML和设计模式的原则
设计模式的前奏----UML和设计模式的原则
-
学院
libFuzzer视频教程
libFuzzer视频教程
-
下载
孔径分布对横向剪切干涉仪波前复原的影响
孔径分布对横向剪切干涉仪波前复原的影响
-
学院
【Python-随到随学】FLask第二周
【Python-随到随学】FLask第二周
-
下载
激光冲击波驱动的新型微泵数值模拟
激光冲击波驱动的新型微泵数值模拟
-
学院
程序员必修基础套餐课
程序员必修基础套餐课
-
学院
龙芯生态应用开发基础:C语言精要
龙芯生态应用开发基础:C语言精要
-
博客
12、Java对象初始化的顺序。
12、Java对象初始化的顺序。
-
下载
指针 .xmind
指针 .xmind
-
学院
Liunx 优化思路与实操步骤
Liunx 优化思路与实操步骤
-
下载
百傲V600(支持6600、停车推送)_x64_2021-02-22-0955.zip
百傲V600(支持6600、停车推送)_x64_2021-02-22-0955.zip
-
博客
ERROR 1198 (HY000): This operation cannot be performed with a running slave; run STOP SLAVE first
ERROR 1198 (HY000): This operation cannot be performed with a running slave; run STOP SLAVE first
-
学院
SecureCRT 连接 GNS3/Linux 的安全精密工具
SecureCRT 连接 GNS3/Linux 的安全精密工具
-
博客
2021-02-25
2021-02-25
-
下载
我的应用程序天气-源码
我的应用程序天气-源码
-
博客
2021-02-03 | 剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
2021-02-03 | 剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
-
学院
Python启蒙到架构师的核心技术精讲课程
Python启蒙到架构师的核心技术精讲课程
-
下载
多材料物体的迭代束硬化校正
多材料物体的迭代束硬化校正
-
下载
374~747MHz数字可调谐微带滤波器
374~747MHz数字可调谐微带滤波器