我是靠谱客的博主 激情草莓,最近开发中收集的这篇文章主要介绍注册表获取系统驱动版本信息,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述


注册表操作总结

MSDN设备GUID定义:

 系统定义的设备设置类保留供系统使用

系统定义的设备设置类可供供应商使用

一、根据实际查询(子键可能随时变动)

Intel VGA

4d36e968-e325-11ce-bfc1-08002be10318}000

intel audio

4d36e96c-e325-11ce-bfc1-08002be10318}000

Realtek audio

4d36e96c-e325-11ce-bfc1-08002be10318}001

LAN

4d36e972-e325-11ce-bfc1-08002be10318}001

WLAN

4d36e972-e325-11ce-bfc1-08002be10318}002

BT

e0cbf06c-cd8b-4647-bb8a-263b43f0f974}000

smbus

4d36e97d-e325-11ce-bfc1-08002be10318}046

ME 

4d36e97d-e325-11ce-bfc1-08002be10318}045

usb

36FC9E60-C465-11CF-8056-444553540000}011

通过注册表遍历查找USB3.0驱动


二、audio版本信息


三、注册表读取

方法1.注册表案例

// bios.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include "windows.h"
#pragma warning(disable:4996)
#pragma comment (lib,"Advapi32.lib")


int main(int argc, char* argv[])
{
	  	 
			HKEY hKEY;//定义有关的hKEY,在查询结束时要关闭
					  //打开与路径data_Set相关的hKEY
			LPCTSTR data_Set = _T("SYSTEM\ControlSet001\Control\Class\{4d36e96c-e325-11ce-bfc1-08002be10318}\0001");
			//访问注册表,hKEY则保存此函数所打开的键的句柄
			if (ERROR_SUCCESS == RegOpenKeyEx(HKEY_LOCAL_MACHINE, data_Set, 0, KEY_READ, &hKEY))
			{

				char DriverVersion[256];
				char DriverDate[256];
				DWORD dwSzType = REG_SZ;
				DWORD dwSizeDriverVersion = sizeof(DriverVersion);
				DWORD dwSizeDriverDate = sizeof(DriverDate);
			
				if (RegQueryValueEx(hKEY, "DriverVersion", 0, &dwSzType, (LPBYTE)&DriverVersion, &dwSizeDriverVersion) != ERROR_SUCCESS)
				{
					printf("Error: unable to query information about the registry");
				}
				if (RegQueryValueEx(hKEY, "DriverDate", 0, &dwSzType, (LPBYTE)&DriverDate, &dwSizeDriverDate) != ERROR_SUCCESS)
				{
					printf("Error: unable to query information about the registry");

				}
				//程序结束,关闭打开的hKEY
				RegCloseKey(hKEY);
		
			 		
				printf("%s %sn", DriverVersion, DriverDate);
			 
				return 0;
			
		}
		else
		{
			printf("Error: unable to query information about the registry");
			return 1;
		}			

}






源代码: http://download.csdn.net/detail/greless/9861226

方法2.devcon工具

指定设备ID,然后得到最后一个DriverNode,通过管道获得版本日期,注意&之间有^
devcon.exe drivernodes VEN_8086^&DEV_8C31
http://bbs.csdn.net/topics/392176449?page=1#post-402403789


方法3

Dism /online /Get-Drivers /all



四、设备GUID详细介绍

位置:HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass 

Battery Devices

Class = Battery ClassGuid = {72631e54-78a4-11d0-bcf7-00aa00b7b32a}

This class includes battery devices and UPS devices.

Biometric Device

Class = Biometric ClassGuid = {53D29EF7-377C-4D14-864B-EB3A85769359}

(Windows Server 2003 and later versions of Windows) This class includes all biometric-based personal identification devices.

Bluetooth Devices

Class = Bluetooth ClassGuid = {e0cbf06c-cd8b-4647-bb8a-263b43f0f974}

(Windows XP SP1 and later versions of Windows) This class includes all Bluetooth devices.

CD-ROM Drives

Class = CDROM ClassGuid = {4d36e965-e325-11ce-bfc1-08002be10318}

This class includes CD-ROM drives, including SCSI CD-ROM drives. By default, the system's CD-ROM class installer also installs a system-supplied CD audio driver and CD-ROM changer driver as Plug and Play filters.

Disk Drives

Class = DiskDrive ClassGuid = {4d36e967-e325-11ce-bfc1-08002be10318}

This class includes hard disk drives. See also the HDC and SCSIAdapter classes.

Display Adapters

Class = Display ClassGuid = {4d36e968-e325-11ce-bfc1-08002be10318}

This class includes video adapters. Drivers for this class include display drivers and video miniport drivers.

Floppy Disk Controllers

Class = FDC ClassGuid = {4d36e969-e325-11ce-bfc1-08002be10318}

This class includes floppy disk drive controllers.

Floppy Disk Drives

Class = FloppyDisk ClassGuid= {4d36e980-e325-11ce-bfc1-08002be10318}

This class includes floppy disk drives.

Global Positioning System/Global Navigation Satellite System

Class = GPS ClassGuid = {6bdd1fc3-810f-11d0-bec7-08002be2092f}

This class includes GNSS devices that use the Universal Windows driver model introduced in Windows 10.

Hard Disk Controllers

Class = HDC ClassGuid = {4d36e96a-e325-11ce-bfc1-08002be10318}

This class includes hard disk controllers, including ATA/ATAPI controllers but not SCSI and RAID disk controllers.

Human Interface Devices (HID)

Class = HIDClass ClassGuid = {745a17a0-74d3-11d0-b6fe-00a0c90f57da}

This class includes interactive input devices that are operated by the system-supplied HID class driver. This includes USB devices that comply with the USB HID Standard and non-USB devices that use a HID minidriver. For more information, see HIDClass Device Setup Class. (See also the Keyboard or Mouse classes later in this list.)

IEEE 1284.4 Devices

Class = Dot4 ClassGuid = {48721b56-6795-11d2-b1a8-0080c72e74a2}

This class includes devices that control the operation of multifunction IEEE 1284.4 peripheral devices.

IEEE 1284.4 Print Functions

Class = Dot4Print ClassGuid = {49ce6ac8-6f86-11d2-b1e5-0080c72e74a2}

This class includes Dot4 print functions. A Dot4 print function is a function on a Dot4 device and has a single child device, which is a member of the Printer device setup class.

IEEE 1394 Devices That Support the 61883 Protocol

Class = 61883 ClassGuid = {7ebefbc0-3200-11d2-b4c2-00a0C9697d07}

This class includes IEEE 1394 devices that support the IEC-61883 protocol device class.

The 61883 component includes the 61883.sys protocol driver that transmits various audio and video data streams over the 1394 bus. These currently include standard/high/low quality DV, MPEG2, DSS, and Audio. These data streams are defined by the IEC-61883 specifications.

IEEE 1394 Devices That Support the AVC Protocol

Class = AVC ClassGuid = {c06ff265-ae09-48f0-812c-16753d7cba83}

This class includes IEEE 1394 devices that support the AVC protocol device class.

IEEE 1394 Devices That Support the SBP2 Protocol

Class = SBP2 ClassGuid = {d48179be-ec20-11d1-b6b8-00c04fa372a7}

This class includes IEEE 1394 devices that support the SBP2 protocol device class.

IEEE 1394 Host Bus Controller

Class = 1394 ClassGuid = {6bdd1fc1-810f-11d0-bec7-08002be2092f}

This class includes 1394 host controllers connected on a PCI bus, but not 1394 peripherals. Drivers for this class are system-supplied.

Imaging Device

Class = Image ClassGuid = {6bdd1fc6-810f-11d0-bec7-08002be2092f}

This class includes still-image capture devices, digital cameras, and scanners.

IrDA Devices

Class = Infrared ClassGuid = {6bdd1fc5-810f-11d0-bec7-08002be2092f}

This class includes infrared devices. Drivers for this class include Serial-IR and Fast-IR NDIS miniports, but see also the Network Adapter class for other NDIS network adapter miniports.

Keyboard

Class = Keyboard ClassGuid = {4d36e96b-e325-11ce-bfc1-08002be10318}

This class includes all keyboards. That is, it must also be specified in the (secondary) INF for an enumerated child HID keyboard device.

Media Changers

Class = MediumChanger ClassGuid = {ce5939ae-ebde-11d0-b181-0000f8753ec4}

This class includes SCSI media changer devices.

Memory Technology Driver

Class = MTD ClassGuid = {4d36e970-e325-11ce-bfc1-08002be10318}

This class includes memory devices, such as flash memory cards.

Modem

Class = Modem ClassGuid = {4d36e96d-e325-11ce-bfc1-08002be10318}

This class includes modem devices. An INF file for a device of this class specifies the features and configuration of the device and stores this information in the registry. An INF file for a device of this class can also be used to install device drivers for a controllerless modem or a software modem. These devices split the functionality between the modem device and the device driver. For more information about modem INF files and Microsoft Windows Driver Model (WDM) modem devices, see Overview of Modem INF Files and Adding WDM Modem Support.

Monitor

Class = Monitor ClassGuid = {4d36e96e-e325-11ce-bfc1-08002be10318}

This class includes display monitors. An INF for a device of this class installs no device driver(s), but instead specifies the features of a particular monitor to be stored in the registry for use by drivers of video adapters. (Monitors are enumerated as the child devices of display adapters.)

Mouse

Class = Mouse ClassGuid = {4d36e96f-e325-11ce-bfc1-08002be10318}

This class includes all mouse devices and other kinds of pointing devices, such as trackballs. That is, this class must also be specified in the (secondary) INF for an enumerated child HID mouse device.

Multifunction Devices

Class = Multifunction ClassGuid = {4d36e971-e325-11ce-bfc1-08002be10318}

This class includes combo cards, such as a PCMCIA modem and netcard adapter. The driver for such a Plug and Play multifunction device is installed under this class and enumerates the modem and netcard separately as its child devices.

Multimedia

Class = Media ClassGuid = {4d36e96c-e325-11ce-bfc1-08002be10318}

This class includes Audio and DVD multimedia devices, joystick ports, and full-motion video capture devices.

Multiport Serial Adapters

Class = MultiportSerial ClassGuid = {50906cb8-ba12-11d1-bf5d-0000f805f530}

This class includes intelligent multiport serial cards, but not peripheral devices that connect to its ports. It does not include unintelligent (16550-type) multiport serial controllers or single-port serial controllers (see the Ports class).

Network Adapter

Class = Net ClassGuid = {4d36e972-e325-11ce-bfc1-08002be10318}

This class includes NDIS miniport drivers excluding Fast-IR miniport drivers, NDIS intermediate drivers (of virtual adapters), and CoNDIS MCM miniport drivers.

Network Client

Class = NetClient ClassGuid = {4d36e973-e325-11ce-bfc1-08002be10318}

This class includes network and/or print providers.

Note  NetClient components are deprecated in Windows 8.1, Windows Server 2012 R2, and later.
 

Network Service

Class = NetService ClassGuid = {4d36e974-e325-11ce-bfc1-08002be10318}

This class includes network services, such as redirectors and servers.

Network Transport

Class = NetTrans ClassGuid = {4d36e975-e325-11ce-bfc1-08002be10318}

This class includes NDIS protocols CoNDIS stand-alone call managers, and CoNDIS clients, in addition to higher level drivers in transport stacks.

PCI SSL Accelerator

Class = SecurityAccelerator ClassGuid = {268c95a1-edfe-11d3-95c3-0010dc4050a5}

This class includes devices that accelerate secure socket layer (SSL) cryptographic processing.

PCMCIA Adapters

Class = PCMCIA ClassGuid = {4d36e977-e325-11ce-bfc1-08002be10318}

This class includes PCMCIA and CardBus host controllers, but not PCMCIA or CardBus peripherals. Drivers for this class are system-supplied.

Ports (COM & LPT ports)

Class = Ports ClassGuid = {4d36e978-e325-11ce-bfc1-08002be10318}

This class includes serial and parallel port devices. See also the MultiportSerial class.

Printers

Class = Printer ClassGuid = {4d36e979-e325-11ce-bfc1-08002be10318}

This class includes printers.

Printers, Bus-specific class drivers

Class = PNPPrinters ClassGuid = {4658ee7e-f050-11d1-b6bd-00c04fa372a7}

This class includes SCSI/1394-enumerated printers. Drivers for this class provide printer communication for a specific bus.

Processors

Class = Processor ClassGuid = {50127dc3-0f36-415e-a6cc-4cb3be910b65}

This class includes processor types.

SCSI and RAID Controllers

Class = SCSIAdapter ClassGuid = {4d36e97b-e325-11ce-bfc1-08002be10318}

This class includes SCSI HBAs (Host Bus Adapters) and disk-array controllers.

Sensors

Class = Sensor ClassGuid = {5175d334-c371-4806-b3ba-71fd53c9258d}

(Windows 7 and later versions of Windows) This class includes sensor and location devices, such as GPS devices.

Smart Card Readers

Class = SmartCardReader ClassGuid = {50dd5230-ba8a-11d1-bf5d-0000f805f530}

This class includes smart card readers.

Storage Volumes

Class = Volume ClassGuid = {71a27cdd-812a-11d0-bec7-08002be2092f}

This class includes storage volumes as defined by the system-supplied logical volume manager and class drivers that create device objects to represent storage volumes, such as the system disk class driver.

System Devices

Class = System ClassGuid = {4d36e97d-e325-11ce-bfc1-08002be10318}

This class includes HALs, system buses, system bridges, the system ACPI driver, and the system volume manager driver.

Tape Drives

Class = TapeDrive ClassGuid = {6d807884-7d21-11cf-801c-08002be10318}

This class includes tape drives, including all tape miniclass drivers.

USB Device

Class = USBDevice ClassGuid = {88BAE032-5A81-49f0-BC3D-A4FF138216D6}

USBDevice includes all USB devices that do not belong to another class. This class is not used for USB host controllers and hubs.

Windows CE USB ActiveSync Devices

Class = WCEUSBS ClassGuid = {25dbce51-6c8f-4a72-8a6d-b54c2b4fc835}

This class includes Windows CE ActiveSync devices.

The WCEUSBS setup class supports communication between a personal computer and a device that is compatible with the Windows CE ActiveSync driver (generally, PocketPC devices) over USB.

Windows Portable Devices (WPD)

Class = WPD ClassGuid = {eec5ad98-8080-425f-922a-dabf3de3f69a}

(Windows Vista and later versions of Windows) This class includes WPD devices.

Windows SideShow

Class = SideShow ClassGuid = {997b5d8d-c442-4f2e-baf3-9c8e671e9e21}

(Windows Vista and later versions of Windows) This class includes all devices that are compatible with Windows SideShow.




最后

以上就是激情草莓为你收集整理的注册表获取系统驱动版本信息的全部内容,希望文章能够帮你解决注册表获取系统驱动版本信息所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部