zhhsh 发表于 2010-7-30 16:56:53

[已解决]如何做到像devcon那样用兼容ID获取硬件ID?

本帖最后由 zhhsh 于 2010-8-3 21:15 编辑

如题
像如下命令:
devcon hwids PCI\CC_0106
获取到类型为AHCI磁盘控制器的其它硬件ID

如:获取到AMD AHCI磁盘控制器的硬件ID为PCI\VEN_1002&DEV_4391&SUBSYS_43911002



使用setupapi.au3 UDF如何得到?
请各位大侠帮助

ceoguang 发表于 2010-7-31 04:07:09

思路问题而已,先获取完整的ID,然后再stringinstr就可以了

zhhsh 发表于 2010-7-31 09:14:11

我说的不是这样。
我是问用UDF setupapi.au3 中哪个函数

3mile 发表于 2010-7-31 09:23:28

想做驱动识别吗?
给个枚举PCI设备的范例。#include <Array.au3>

Local $regreturn,$aRecord
reg()
_ArrayDisplay($regreturn)

Func reg()
        Dim $key="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCI",$regreturn
For $i = 1 to 100
$var = RegEnumKey($key, $i)
if @error <> 0 Then ExitLoop
        For $n=1 To 100
                $subvarname=$key&"\"&$var
                $subvar=RegEnumKey($subvarname,$n)
                If @error <> 0 Then ExitLoop
                        $aaa=RegRead($subvarname&"\"&$subvar&"\","class")
                                $hdid=RegRead($subvarname&"\"&$subvar&"\","HardwareID")
                                $bb=StringSplit($hdid,@CRLF)
                                If UBound($bb)>5 Then
                                $cc=StringSplit($bb,"&")
                                $regre=$cc&"&"&$cc
                        Else
                                $cc=StringSplit($bb,"&")
                                $regre=$cc&"&"&$cc&"&"&$cc
                        EndIf
                                _ArrayAdd($regreturn,$regre)
        Next
next
        Return $regreturn       
EndFunc

zhhsh 发表于 2010-8-3 21:15:01

回复 4# 3mile


    谢谢大大的帮忙,已解决了
页: [1]
查看完整版本: [已解决]如何做到像devcon那样用兼容ID获取硬件ID?