Obtien des informations sur la clé de registre spécifiée
#include <WinAPIReg.au3>
_WinAPI_RegQueryInfoKey ( $hKey )
$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 |
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. |
_WinAPI_RegCreateKey, _WinAPI_RegOpenKey
Consultez RegQueryInfoKey dans la librairie MSDN.
#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')