Partager via


Fonction RegQueryInfoKeyA (winreg.h)

Récupère des informations sur la clé de Registre spécifiée.

Syntaxe

LSTATUS RegQueryInfoKeyA(
  [in]                HKEY      hKey,
  [out, optional]     LPSTR     lpClass,
  [in, out, optional] LPDWORD   lpcchClass,
                      LPDWORD   lpReserved,
  [out, optional]     LPDWORD   lpcSubKeys,
  [out, optional]     LPDWORD   lpcbMaxSubKeyLen,
  [out, optional]     LPDWORD   lpcbMaxClassLen,
  [out, optional]     LPDWORD   lpcValues,
  [out, optional]     LPDWORD   lpcbMaxValueNameLen,
  [out, optional]     LPDWORD   lpcbMaxValueLen,
  [out, optional]     LPDWORD   lpcbSecurityDescriptor,
  [out, optional]     PFILETIME lpftLastWriteTime
);

Paramètres

[in] hKey

Handle d’une clé de Registre ouverte. La clé doit avoir été ouverte avec le droit d’accès KEY_QUERY_VALUE. Pour plus d’informations, consultez Sécurité de la clé de Registre et droits d’accès.

Ce handle est retourné par la fonction RegCreateKeyEx, RegCreateKeyTransacted, RegOpenKeyEx ou RegOpenKeyTransacted . Il peut également s’agir de 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

[out, optional] lpClass

Pointeur vers une mémoire tampon qui reçoit la classe définie par l’utilisateur de la clé. Ce paramètre peut être NULL.

[in, out, optional] lpcchClass

Pointeur vers une variable qui spécifie la taille de la mémoire tampon pointée vers le paramètre lpClass , en caractères.

La taille doit inclure le caractère null de fin. Lorsque la fonction retourne, cette variable contient la taille de la chaîne de classe stockée dans la mémoire tampon. Le nombre retourné n’inclut pas le caractère null de fin. Si la mémoire tampon n’est pas assez grande, la fonction retourne ERROR_MORE_DATA, et la variable contient la taille de la chaîne, en caractères, sans compter le caractère null de fin.

Si lpClass a la valeur NULL, lpcClass peut avoir la valeur NULL.

Si le paramètre lpClass est une adresse valide, mais que le paramètre lpcClass n’est pas null, par exemple, il est NULL, la fonction retourne ERROR_INVALID_PARAMETER.

lpReserved

Ce paramètre est réservé et doit avoir la valeur NULL.

[out, optional] lpcSubKeys

Pointeur vers une variable qui reçoit le nombre de sous-clés contenues par la clé spécifiée. Ce paramètre peut être NULL.

[out, optional] lpcbMaxSubKeyLen

Pointeur vers une variable qui reçoit la taille de la sous-clé de la clé avec le nom le plus long, en caractères ANSI, sans le caractère null de fin. Ce paramètre peut être NULL.

[out, optional] lpcbMaxClassLen

Pointeur vers une variable qui reçoit la taille de la chaîne la plus longue qui spécifie une classe de sous-clé, en caractères ANSI. Le nombre retourné n’inclut pas le caractère null de fin. Ce paramètre peut être NULL.

[out, optional] lpcValues

Pointeur vers une variable qui reçoit le nombre de valeurs associées à la clé. Ce paramètre peut être NULL.

[out, optional] lpcbMaxValueNameLen

Pointeur vers une variable qui reçoit la taille du nom de la valeur la plus longue de la clé, en caractères ANSI. La taille n’inclut pas le caractère null de fin. Ce paramètre peut être NULL.

[out, optional] lpcbMaxValueLen

Pointeur vers une variable qui reçoit la taille du composant de données le plus long parmi les valeurs de la clé, en octets. Ce paramètre peut être NULL.

[out, optional] lpcbSecurityDescriptor

Pointeur vers une variable qui reçoit la taille du descripteur de sécurité de la clé, en octets. Ce paramètre peut être NULL.

[out, optional] lpftLastWriteTime

Pointeur vers une structure FILETIME qui reçoit l’heure de la dernière écriture. Ce paramètre peut être NULL.

La fonction définit les membres de la structure FILETIME pour indiquer la dernière modification de la clé ou de l’une de ses entrées de valeur.

Valeur retournée

Si la fonction réussit, la valeur de retour est ERROR_SUCCESS.

Si la fonction échoue, la valeur de retour est un code d’erreur système.

Si la mémoire tampon lpClass est trop petite pour recevoir le nom de la classe, la fonction retourne ERROR_MORE_DATA.

Remarques

Notes

Sur les versions héritées de Windows, cette API est également exposée par kernel32.dll.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête winreg.h (inclure Windows.h)
Bibliothèque Advapi32.lib
DLL Advapi32.dll

Voir aussi

FILETIME

RegDeleteKey

RegEnumKeyEx

RegEnumValue

RegQueryValueEx

Fonctions du Registre

Vue d’ensemble du Registre