获取设备列表,所有参数可选,
设备类名可以设备管理器中查看,可输入 GUID_DEVCLASS 前缀的常量自动转换,
枚举键名可以是 PCI,USB 等等,也可以省略
参数请参考SetupDiGetClassDevs这个API的文档
用于获取硬件设备列表
打开设备管理器
"{6BDD1FC1-810F-11D0-BEC7-08002BE2092F}"
"{66F250D6-7801-4A64-B139-EEA80A450B24}"
"{7EBEFBC0-3200-11D2-B4C2-00A0C9697D07}"
"{4D36E964-E325-11CE-BFC1-08002BE10318}"
"{D45B1C18-C8FA-11D1-9F77-0000F805F530}"
"{C06FF265-AE09-48F0-812C-16753D7CBA83}"
"{72631E54-78A4-11D0-BCF7-00AA00B7B32A}"
"{53D29EF7-377C-4D14-864B-EB3A85769359}"
"{E0CBF06C-CD8B-4647-BB8A-263B43F0F974}"
"{4D36E965-E325-11CE-BFC1-08002BE10318}"
"{4D36E966-E325-11CE-BFC1-08002BE10318}"
"{6BDD1FC2-810F-11D0-BEC7-08002BE2092F}"
"{4D36E967-E325-11CE-BFC1-08002BE10318}"
"{4D36E968-E325-11CE-BFC1-08002BE10318}"
"{48721B56-6795-11D2-B1A8-0080C72E74A2}"
"{49CE6AC8-6F86-11D2-B1E5-0080C72E74A2}"
"{9DA2B80F-F89F-4A49-A5C2-511B085B9E8A}"
"{C459DF55-DB08-11D1-B009-00A0C9081FF6}"
"{E2F84CE7-8EFA-411C-AA69-97454CA4CB57}"
"{4D36E969-E325-11CE-BFC1-08002BE10318}"
"{F2E7DD72-6468-4E36-B6F1-6488F42C1B52}"
"{4D36E980-E325-11CE-BFC1-08002BE10318}"
"{6BDD1FC3-810F-11D0-BEC7-08002BE2092F}"
"{4D36E96A-E325-11CE-BFC1-08002BE10318}"
"{745A17A0-74D3-11D0-B6FE-00A0C90F57DA}"
"{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}"
"{30EF7132-D858-4A0C-AC24-B9028A5CCA3F}"
"{6BDD1FC5-810F-11D0-BEC7-08002BE2092F}"
"{4D36E96B-E325-11CE-BFC1-08002BE10318}"
"{8ECC055D-047F-11D1-A537-0000F8753ED1}"
"{4D36E96C-E325-11CE-BFC1-08002BE10318}"
"{CE5939AE-EBDE-11D0-B181-0000F8753EC4}"
"{5099944A-F6B9-4057-A056-8C550228544C}"
"{4D36E96D-E325-11CE-BFC1-08002BE10318}"
"{4D36E96E-E325-11CE-BFC1-08002BE10318}"
"{4D36E96F-E325-11CE-BFC1-08002BE10318}"
"{4D36E970-E325-11CE-BFC1-08002BE10318}"
"{4D36E971-E325-11CE-BFC1-08002BE10318}"
"{50906CB8-BA12-11D1-BF5D-0000F805F530}"
"{4D36E972-E325-11CE-BFC1-08002BE10318}"
"{4D36E973-E325-11CE-BFC1-08002BE10318}"
"{4D36E974-E325-11CE-BFC1-08002BE10318}"
"{4D36E975-E325-11CE-BFC1-08002BE10318}"
"{4D36E976-E325-11CE-BFC1-08002BE10318}"
"{4D36E977-E325-11CE-BFC1-08002BE10318}"
"{4658EE7E-F050-11D1-B6BD-00C04FA372A7}"
"{4D36E978-E325-11CE-BFC1-08002BE10318}"
"{4D36E979-E325-11CE-BFC1-08002BE10318}"
"{4D36E97A-E325-11CE-BFC1-08002BE10318}"
"{50127DC3-0F36-415E-A6CC-4CB3BE910B65}"
"{D48179BE-EC20-11D1-B6B8-00C04FA372A7}"
"{4D36E97B-E325-11CE-BFC1-08002BE10318}"
"{268C95A1-EDFE-11D3-95C3-0010DC4050A5}"
"{5175D334-C371-4806-B3BA-71FD53C9258D}"
"{997B5D8D-C442-4F2E-BAF3-9C8E671E9E21}"
"{50DD5230-BA8A-11D1-BF5D-0000F805F530}"
"{4D36E97C-E325-11CE-BFC1-08002BE10318}"
"{4D36E97D-E325-11CE-BFC1-08002BE10318}"
"{6D807884-7D21-11CF-801C-08002BE10318}"
"{4D36E97E-E325-11CE-BFC1-08002BE10318}"
"{36FC9E60-C465-11CF-8056-444553540000}"
"{71A27CDD-812A-11D0-BEC7-08002BE2092F}"
"{533C5B84-EC70-11D2-9505-00C04F79DEAF}"
"{25DBCE51-6C8F-4A72-8A6D-B54C2B4FC835}"
"{EEC5AD98-8080-425F-922A-DABF3DE3F69A}"
设备类 GUID,
win.guid 对象
设备句柄
删除设备列表
此函数不是必须调用,内存回收器会自动调用此函数
for( index,classGuid,deviceDesc,devInfo in SysDeviceObject.each(
8/*_SPDRP_CLASSGUID*/,
0/*_SPDRP_DEVICEDESC*/
) ){
/*可用_SPDRP前缀的常量指定任意个查询字段,
相应增加对应个数的迭代器返回值,但第一个迭代返回值总是表示位置索引
最后一个迭代返回值总是当前设备的 SP_DEVINFO_DATA 结构体*/
}
"{6BDD1FC1-810F-11D0-BEC7-08002BE2092F}"
```
<a id="_GUID_DEVCLASS_1394DEBUG"></a>
### _GUID_DEVCLASS_1394DEBUG
```aardio
"{66F250D6-7801-4A64-B139-EEA80A450B24}"
```
<a id="_GUID_DEVCLASS_61883"></a>
### _GUID_DEVCLASS_61883
```aardio
"{7EBEFBC0-3200-11D2-B4C2-00A0C9697D07}"
```
<a id="_GUID_DEVCLASS_ADAPTER"></a>
### _GUID_DEVCLASS_ADAPTER
```aardio
"{4D36E964-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_APMSUPPORT"></a>
### _GUID_DEVCLASS_APMSUPPORT
```aardio
"{D45B1C18-C8FA-11D1-9F77-0000F805F530}"
```
<a id="_GUID_DEVCLASS_AVC"></a>
### _GUID_DEVCLASS_AVC
```aardio
"{C06FF265-AE09-48F0-812C-16753D7CBA83}"
```
<a id="_GUID_DEVCLASS_BATTERY"></a>
### _GUID_DEVCLASS_BATTERY
```aardio
"{72631E54-78A4-11D0-BCF7-00AA00B7B32A}"
```
<a id="_GUID_DEVCLASS_BIOMETRIC"></a>
### _GUID_DEVCLASS_BIOMETRIC
```aardio
"{53D29EF7-377C-4D14-864B-EB3A85769359}"
```
<a id="_GUID_DEVCLASS_BLUETOOTH"></a>
### _GUID_DEVCLASS_BLUETOOTH
```aardio
"{E0CBF06C-CD8B-4647-BB8A-263B43F0F974}"
```
<a id="_GUID_DEVCLASS_CDROM"></a>
### _GUID_DEVCLASS_CDROM
```aardio
"{4D36E965-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_COMPUTER"></a>
### _GUID_DEVCLASS_COMPUTER
```aardio
"{4D36E966-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_DECODER"></a>
### _GUID_DEVCLASS_DECODER
```aardio
"{6BDD1FC2-810F-11D0-BEC7-08002BE2092F}"
```
<a id="_GUID_DEVCLASS_DISKDRIVE"></a>
### _GUID_DEVCLASS_DISKDRIVE
```aardio
"{4D36E967-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_DISPLAY"></a>
### _GUID_DEVCLASS_DISPLAY
```aardio
"{4D36E968-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_DOT4"></a>
### _GUID_DEVCLASS_DOT4
```aardio
"{48721B56-6795-11D2-B1A8-0080C72E74A2}"
```
<a id="_GUID_DEVCLASS_DOT4PRINT"></a>
### _GUID_DEVCLASS_DOT4PRINT
```aardio
"{49CE6AC8-6F86-11D2-B1E5-0080C72E74A2}"
```
<a id="_GUID_DEVCLASS_EHSTORAGESILO"></a>
### _GUID_DEVCLASS_EHSTORAGESILO
```aardio
"{9DA2B80F-F89F-4A49-A5C2-511B085B9E8A}"
```
<a id="_GUID_DEVCLASS_ENUM1394"></a>
### _GUID_DEVCLASS_ENUM1394
```aardio
"{C459DF55-DB08-11D1-B009-00A0C9081FF6}"
```
<a id="_GUID_DEVCLASS_EXTENSION"></a>
### _GUID_DEVCLASS_EXTENSION
```aardio
"{E2F84CE7-8EFA-411C-AA69-97454CA4CB57}"
```
<a id="_GUID_DEVCLASS_FDC"></a>
### _GUID_DEVCLASS_FDC
```aardio
"{4D36E969-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_FIRMWARE"></a>
### _GUID_DEVCLASS_FIRMWARE
```aardio
"{F2E7DD72-6468-4E36-B6F1-6488F42C1B52}"
```
<a id="_GUID_DEVCLASS_FLOPPYDISK"></a>
### _GUID_DEVCLASS_FLOPPYDISK
```aardio
"{4D36E980-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_GPS"></a>
### _GUID_DEVCLASS_GPS
```aardio
"{6BDD1FC3-810F-11D0-BEC7-08002BE2092F}"
```
<a id="_GUID_DEVCLASS_HDC"></a>
### _GUID_DEVCLASS_HDC
```aardio
"{4D36E96A-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_HIDCLASS"></a>
### _GUID_DEVCLASS_HIDCLASS
```aardio
"{745A17A0-74D3-11D0-B6FE-00A0C90F57DA}"
```
<a id="_GUID_DEVCLASS_IMAGE"></a>
### _GUID_DEVCLASS_IMAGE
```aardio
"{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}"
```
<a id="_GUID_DEVCLASS_INFINIBAND"></a>
### _GUID_DEVCLASS_INFINIBAND
```aardio
"{30EF7132-D858-4A0C-AC24-B9028A5CCA3F}"
```
<a id="_GUID_DEVCLASS_INFRARED"></a>
### _GUID_DEVCLASS_INFRARED
```aardio
"{6BDD1FC5-810F-11D0-BEC7-08002BE2092F}"
```
<a id="_GUID_DEVCLASS_KEYBOARD"></a>
### _GUID_DEVCLASS_KEYBOARD
```aardio
"{4D36E96B-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_LEGACYDRIVER"></a>
### _GUID_DEVCLASS_LEGACYDRIVER
```aardio
"{8ECC055D-047F-11D1-A537-0000F8753ED1}"
```
<a id="_GUID_DEVCLASS_MEDIA"></a>
### _GUID_DEVCLASS_MEDIA
```aardio
"{4D36E96C-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_MEDIUM_CHANGER"></a>
### _GUID_DEVCLASS_MEDIUM_CHANGER
```aardio
"{CE5939AE-EBDE-11D0-B181-0000F8753EC4}"
```
<a id="_GUID_DEVCLASS_MEMORY"></a>
### _GUID_DEVCLASS_MEMORY
```aardio
"{5099944A-F6B9-4057-A056-8C550228544C}"
```
<a id="_GUID_DEVCLASS_MODEM"></a>
### _GUID_DEVCLASS_MODEM
```aardio
"{4D36E96D-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_MONITOR"></a>
### _GUID_DEVCLASS_MONITOR
```aardio
"{4D36E96E-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_MOUSE"></a>
### _GUID_DEVCLASS_MOUSE
```aardio
"{4D36E96F-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_MTD"></a>
### _GUID_DEVCLASS_MTD
```aardio
"{4D36E970-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_MULTIFUNCTION"></a>
### _GUID_DEVCLASS_MULTIFUNCTION
```aardio
"{4D36E971-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_MULTIPORTSERIAL"></a>
### _GUID_DEVCLASS_MULTIPORTSERIAL
```aardio
"{50906CB8-BA12-11D1-BF5D-0000F805F530}"
```
<a id="_GUID_DEVCLASS_NET"></a>
### _GUID_DEVCLASS_NET
```aardio
"{4D36E972-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_NETCLIENT"></a>
### _GUID_DEVCLASS_NETCLIENT
```aardio
"{4D36E973-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_NETSERVICE"></a>
### _GUID_DEVCLASS_NETSERVICE
```aardio
"{4D36E974-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_NETTRANS"></a>
### _GUID_DEVCLASS_NETTRANS
```aardio
"{4D36E975-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_NODRIVER"></a>
### _GUID_DEVCLASS_NODRIVER
```aardio
"{4D36E976-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_PCMCIA"></a>
### _GUID_DEVCLASS_PCMCIA
```aardio
"{4D36E977-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_PNPPRINTERS"></a>
### _GUID_DEVCLASS_PNPPRINTERS
```aardio
"{4658EE7E-F050-11D1-B6BD-00C04FA372A7}"
```
<a id="_GUID_DEVCLASS_PORTS"></a>
### _GUID_DEVCLASS_PORTS
```aardio
"{4D36E978-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_PRINTER"></a>
### _GUID_DEVCLASS_PRINTER
```aardio
"{4D36E979-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_PRINTERUPGRADE"></a>
### _GUID_DEVCLASS_PRINTERUPGRADE
```aardio
"{4D36E97A-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_PROCESSOR"></a>
### _GUID_DEVCLASS_PROCESSOR
```aardio
"{50127DC3-0F36-415E-A6CC-4CB3BE910B65}"
```
<a id="_GUID_DEVCLASS_SBP2"></a>
### _GUID_DEVCLASS_SBP2
```aardio
"{D48179BE-EC20-11D1-B6B8-00C04FA372A7}"
```
<a id="_GUID_DEVCLASS_SCSIADAPTER"></a>
### _GUID_DEVCLASS_SCSIADAPTER
```aardio
"{4D36E97B-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_SECURITYACCELERATOR"></a>
### _GUID_DEVCLASS_SECURITYACCELERATOR
```aardio
"{268C95A1-EDFE-11D3-95C3-0010DC4050A5}"
```
<a id="_GUID_DEVCLASS_SENSOR"></a>
### _GUID_DEVCLASS_SENSOR
```aardio
"{5175D334-C371-4806-B3BA-71FD53C9258D}"
```
<a id="_GUID_DEVCLASS_SIDESHOW"></a>
### _GUID_DEVCLASS_SIDESHOW
```aardio
"{997B5D8D-C442-4F2E-BAF3-9C8E671E9E21}"
```
<a id="_GUID_DEVCLASS_SMARTCARDREADER"></a>
### _GUID_DEVCLASS_SMARTCARDREADER
```aardio
"{50DD5230-BA8A-11D1-BF5D-0000F805F530}"
```
<a id="_GUID_DEVCLASS_SOUND"></a>
### _GUID_DEVCLASS_SOUND
```aardio
"{4D36E97C-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_SYSTEM"></a>
### _GUID_DEVCLASS_SYSTEM
```aardio
"{4D36E97D-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_TAPEDRIVE"></a>
### _GUID_DEVCLASS_TAPEDRIVE
```aardio
"{6D807884-7D21-11CF-801C-08002BE10318}"
```
<a id="_GUID_DEVCLASS_UNKNOWN"></a>
### _GUID_DEVCLASS_UNKNOWN
```aardio
"{4D36E97E-E325-11CE-BFC1-08002BE10318}"
```
<a id="_GUID_DEVCLASS_USB"></a>
### _GUID_DEVCLASS_USB
```aardio
"{36FC9E60-C465-11CF-8056-444553540000}"
```
<a id="_GUID_DEVCLASS_VOLUME"></a>
### _GUID_DEVCLASS_VOLUME
```aardio
"{71A27CDD-812A-11D0-BEC7-08002BE2092F}"
```
<a id="_GUID_DEVCLASS_VOLUMESNAPSHOT"></a>
### _GUID_DEVCLASS_VOLUMESNAPSHOT
```aardio
"{533C5B84-EC70-11D2-9505-00C04F79DEAF}"
```
<a id="_GUID_DEVCLASS_WCEUSBS"></a>
### _GUID_DEVCLASS_WCEUSBS
```aardio
"{25DBCE51-6C8F-4A72-8A6D-B54C2B4FC835}"
```
<a id="_GUID_DEVCLASS_WPD"></a>
### _GUID_DEVCLASS_WPD
```aardio
"{EEC5AD98-8080-425F-922A-DABF3DE3F69A}"
```
### 自动完成常量
_SPDRP_ADDRESS=0x1C
_SPDRP_BASE_CONTAINERID=0x24
_SPDRP_BUSNUMBER=0x15
_SPDRP_BUSTYPEGUID=0x13
_SPDRP_CAPABILITIES=0xF
_SPDRP_CHARACTERISTICS=0x1B
_SPDRP_CLASS=7
_SPDRP_CLASSGUID=8
_SPDRP_COMPATIBLEIDS=2
_SPDRP_CONFIGFLAGS=0xA
_SPDRP_DEVICEDESC=0
_SPDRP_DEVICE_POWER_DATA=0x1E
_SPDRP_DEVTYPE=0x19
_SPDRP_DRIVER=9
_SPDRP_ENUMERATOR_NAME=0x16
_SPDRP_EXCLUSIVE=0x1A
_SPDRP_FRIENDLYNAME=0xC
_SPDRP_HARDWAREID=1
_SPDRP_INSTALL_STATE=0x22
_SPDRP_LEGACYBUSTYPE=0x14
_SPDRP_LOCATION_INFORMATION=0xD
_SPDRP_LOCATION_PATHS=0x23
_SPDRP_LOWERFILTERS=0x12
_SPDRP_MAXIMUM_PROPERTY=0x25
_SPDRP_MFG=0xB
_SPDRP_PHYSICAL_DEVICE_OBJECT_NAME=0xE
_SPDRP_REMOVAL_POLICY=0x1F
_SPDRP_REMOVAL_POLICY_HW_DEFAULT=0x20
_SPDRP_REMOVAL_POLICY_OVERRIDE=0x21
_SPDRP_SECURITY=0x17
_SPDRP_SECURITY_SDS=0x18
_SPDRP_SERVICE=4
_SPDRP_UI_NUMBER=0x10
_SPDRP_UI_NUMBER_DESC_FORMAT=0x1D
_SPDRP_UNUSED0=3
_SPDRP_UNUSED1=5
_SPDRP_UNUSED2=6
_SPDRP_UPPERFILTERS=0x11
[Markdown 格式](device.md)