Partager via


FONCTION OREnumKey

Énumère les sous-clés de la clé de Registre ouverte spécifiée dans une ruche de Registre hors connexion. La fonction récupère des informations sur une sous-clé chaque fois qu’elle est appelée.

Syntaxe

DWORD OREnumKey(
  _In_        ORHKEY    Handle,
  _In_        DWORD     dwIndex,
  _Out_       PWSTR     lpName,
  _Inout_     PDWORD    lpcName,
  _Out_opt_   PWSTR     lpClass,
  _Inout_opt_ PDWORD    lpcClass,
  _Out_opt_   PFILETIME lpftLastWriteTime
);

Paramètres

Handle [in]

Handle d’une clé de Registre ouverte dans une ruche de Registre hors connexion.

dwIndex [in]

Index de la sous-clé à récupérer. Ce paramètre doit être égal à zéro pour le premier appel à la fonction, puis incrémenté pour les appels suivants.

Étant donné que les sous-clés ne sont pas triées, toute nouvelle sous-clé aura un index arbitraire. Cela signifie que la fonction peut retourner des sous-clés dans n’importe quel ordre.

lpName [out]

Pointeur vers une mémoire tampon qui reçoit le nom de la sous-clé, y compris le caractère null de fin. La fonction copie uniquement le nom de la sous-clé, et non la hiérarchie de clés complète, dans la mémoire tampon. Si la fonction échoue, aucune information n’est copiée dans cette mémoire tampon.

Pour plus d’informations, consultez Limites de taille des éléments de registre.

lpcName [in, out]

Pointeur vers une variable qui spécifie la taille de la mémoire tampon spécifiée par le paramètre lpName , dans WCHAR. Cette taille doit inclure le caractère null de fin. Si la fonction réussit, la variable pointée par lpcName contient le nombre de caractères stockés dans la mémoire tampon, sans inclure le caractère null de fin.

lpClass [out, facultatif]

Pointeur vers une mémoire tampon qui reçoit la chaîne de classe terminée par null de la sous-clé énumérée. Ce paramètre peut être NULL.

lpcClass [in, out, optional]

Pointeur vers une variable qui spécifie la taille de la mémoire tampon spécifiée par le paramètre lpClass , dans WCHAR. La taille doit inclure le caractère null de fin. Si la fonction réussit, lpcClass contient le nombre de caractères stockés dans la mémoire tampon, sans inclure le caractère null de fin. Ce paramètre peut être NULL uniquement si lpClass a la valeur NULL.

lpftLastWriteTime [out, facultatif]

Pointeur vers la structure FILETIME qui reçoit l’heure à laquelle la sous-clé énumérée a été écrite pour la dernière fois. Ce paramètre peut être NULL.

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 différent de zéro défini dans Winerror.h. Vous pouvez utiliser la fonction FormatMessage avec l’indicateur FORMAT_MESSAGE_FROM_SYSTEM pour obtenir une description générique de l’erreur. Les codes d’erreur possibles sont les suivants :

  • Si la mémoire tampon lpName est trop petite pour recevoir le nom de la clé, la fonction retourne ERROR_MORE_DATA.
  • S’il n’y a plus de sous-clés disponibles, la fonction retourne ERROR_NO_MORE_ITEMS.

Notes

Pour énumérer les sous-clés, une application doit initialement appeler la fonction OREnumKey avec le paramètre dwIndex défini sur zéro. L’application doit ensuite incrémenter le paramètre dwIndex et appeler OREnumKey jusqu’à ce qu’il n’y ait plus de sous-clés (ce qui signifie que la fonction retourne ERROR_NO_MORE_ITEMS).

L’application peut également définir dwIndex sur l’index de la dernière sous-clé lors du premier appel à la fonction et décrémenter l’index jusqu’à ce que la sous-clé avec l’index 0 soit énumérée. Pour récupérer l’index de la dernière sous-clé, utilisez la fonction ORQueryInfoKey .

Lorsqu’une application utilise la fonction OREnumKey , elle ne doit pas effectuer d’appels à des fonctions de Registre hors connexion susceptibles de modifier la clé énumérée.

Spécifications

Condition requise Valeur
Composant redistribuable
Bibliothèque du Registre windows hors connexion version 1.0 ou ultérieure
En-tête
Offreg.h
DLL
Offreg.dll

Voir aussi

ORCreateKey

ORDeleteKey

OROpenKey

ORQueryInfoKey