枚举指定的并已打开的注册表键子项.
#Include <WinAPIEx.au3>
_WinAPI_RegEnumKey ( $hKey, $iIndex )
$hKey | 打开的注册表项句柄,该键项必须已打开且有 $KEY_ENUMERATE_SUB_KEYS 访问权限. 句柄由 _WinAPI_RegCreateKey() 或 _WinAPI_RegOpenKey() 函数返回. 参数也可以为下列一预定义项: $HKEY_CLASSES_ROOT --- 定义文件类型和类型相关的属性 $HKEY_CURRENT_CONFIG --- 包含本地计算机系统目前的硬件配置文件 $HKEY_CURRENT_USER --- 定义当前用户的参数选择 $HKEY_LOCAL_MACHINE --- 定义计算机物理状态,包括总线类型、系统内存数据、并安装的硬件和软件 $HKEY_PERFORMANCE_DATA --- 允许访问性能数据 $HKEY_USERS --- 确定本地计算机新用户定义默认用户配置,并作为当前用户的用户配置 |
$iIndex | 项的索引.第一次调用本函数时,这个参数应为 0,后续调用则递增. |
成功: | 返回子项名称字符串 |
失败: | 返回空字符串,设置 @error 标志为非 0 值, @extended 标志可能包含系统错误代码. |
在MSDN中搜索
#Include <APIConstants.au3>
#Include <Array.au3>
#Include <WinAPIEx.au3>
Opt('MustDeclareVars', 1)
Global $hKey, $aKey, $Count
$hKey = _WinAPI_RegOpenKey($HKEY_CLASSES_ROOT, 'CLSID', $KEY_READ)
If @error Then
MsgBox(16, @extended, _WinAPI_GetErrorMessage(@extended))
Exit
EndIf
$Count = _WinAPI_RegQueryInfoKey($hKey)
Dim $aKey[$Count[0]]
For $i = 0 To UBound($aKey) - 1
$aKey[$i] = _WinAPI_RegEnumKey($hKey, $i)
Next
_WinAPI_RegCloseKey($hKey)
_ArrayDisplay($aKey, '_WinAPI_RegEnumKey')