UDF > WinAPIEx > Registry >


_WinAPI_RegQueryInfoKey

Obtien des informations sur la clé de registre spécifiée

#include <WinAPIReg.au3>
_WinAPI_RegQueryInfoKey ( $hKey )

Paramètre

$hKey Handle de la clé de registre ouverte. La clé doit avoir été ouverte avec le droit d'accès $KEY_QUERY_VALUE.
Ce handle est rtourné par la fonction _WinAPI_RegCreateKey() ou _WinAPI_RegOpenKey(). Il peut également être l'une des clés prédéfinies suivantes:
$HKEY_CLASSES_ROOT
$HKEY_CURRENT_CONFIG
$HKEY_CURRENT_USER
$HKEY_LOCAL_MACHINE
$HKEY_PERFORMANCE_DATA
$HKEY_USERS

Valeur de retour

Succès: Retourne le tableau contenant les informations suivantes:
[0] - Le nombre de sous-clés qui sont contenues dans la clé spécifiée.
[1] - La taille de la sous-clé de la clé avec le nom le plus long, en caractères, sans compter le caractère nul final.
[2] - Le nombre de valeurs qui sont associées à la clé.
[3] - La taille de la plus longue valeur de nom de clé, en caractères. La taille n'inclut pas le caractère nul final.
[4] - La taille de l'élément de données le plus long parmi les valeurs de la clé, en octets.
Échec: Définit @error <> 0, @extended peut contenir le code d'erreur du système.

En relation

_WinAPI_RegCreateKey, _WinAPI_RegOpenKey

Voir aussi

Consultez RegQueryInfoKey dans la librairie MSDN.

Exemple

#include <APIRegConstants.au3>
#include <Array.au3>
#include <MsgBoxConstants.au3>
#include <WinAPIError.au3>
#include <WinAPIReg.au3>

Local $hKey = _WinAPI_RegOpenKey($HKEY_CLASSES_ROOT, 'CLSID', $KEY_READ)
If @error Then
    MsgBox(BitOR($MB_ICONERROR, $MB_SYSTEMMODAL), @extended, _WinAPI_GetErrorMessage(@extended))
    Exit
EndIf
Local $iCount = _WinAPI_RegQueryInfoKey($hKey)
Local $aKey[$iCount[0]]
For $i = 0 To UBound($aKey) - 1
    $aKey[$i] = _WinAPI_RegEnumKey($hKey, $i)
Next

_WinAPI_RegCloseKey($hKey)

_ArrayDisplay($aKey, '_WinAPI_RegEnumKey')