Freigeben über


RegEnumKeyA-Funktion (winreg.h)

Listet die Unterschlüssel des angegebenen geöffneten Registrierungsschlüssels auf. Die Funktion ruft den Namen eines Unterschlüssels jedes Mal ab, wenn sie aufgerufen wird.

Hinweis Diese Funktion wird nur zur Kompatibilität mit 16-Bit-Versionen von Windows bereitgestellt. Anwendungen sollten die RegEnumKeyEx--Funktion verwenden.
 

Syntax

LSTATUS RegEnumKeyA(
  [in]  HKEY  hKey,
  [in]  DWORD dwIndex,
  [out] LPSTR lpName,
  [in]  DWORD cchName
);

Parameter

[in] hKey

Ein Handle zu einem geöffneten Registrierungsschlüssel. Der Schlüssel muss mit dem KEY_ENUMERATE_SUB_KEYS Zugriffsrecht geöffnet worden sein. Weitere Informationen finden Sie unter Registry Key Security and Access Rights.

Dieses Handle wird von der RegCreateKeyEx, RegCreateKeyTransacted, RegOpenKeyExoder RegOpenKeyTransacted Funktion zurückgegeben. Es kann auch einer der folgenden vordefinierten Schlüsselsein:

HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS

[in] dwIndex

Der Index des Unterschlüssels hKey- abgerufen werden soll. Dieser Wert sollte für den ersten Aufruf der RegEnumKey-Funktion null und dann für nachfolgende Aufrufe erhöht werden.

Da Unterschlüssel nicht sortiert sind, verfügt jeder neue Unterschlüssel über einen beliebigen Index. Dies bedeutet, dass die Funktion Unterschlüssel in beliebiger Reihenfolge zurückgeben kann.

[out] lpName

Ein Zeiger auf einen Puffer, der den Namen des Unterschlüssels empfängt, einschließlich des endenden Nullzeichens. Diese Funktion kopiert nur den Namen des Unterschlüssels, nicht die vollständige Schlüsselhierarchie, in den Puffer.

Weitere Informationen finden Sie unter Registrierungselementgrößenbeschränkungen.

[in] cchName

Die Größe des Puffers, auf den der parameter lpName verweist, in TCHARs. Um die erforderliche Puffergröße zu ermitteln, verwenden Sie die RegQueryInfoKey--Funktion, um die Größe des größten Unterschlüssels für den schlüssel zu bestimmen, der durch den hKey Parameter identifiziert wird.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert ERROR_SUCCESS.

Wenn die Funktion fehlschlägt, ist der Rückgabewert ein Systemfehlercode. Wenn keine weiteren Unterschlüssel verfügbar sind, gibt die Funktion ERROR_NO_MORE_ITEMS zurück.

Wenn der lpName Puffer zu klein ist, um den Namen des Schlüssels zu erhalten, gibt die Funktion ERROR_MORE_DATA zurück.

Bemerkungen

Zum Aufzählen von Unterschlüsseln sollte eine Anwendung zunächst die RegEnumKey--Funktion aufrufen, wobei der dwIndex- Parameter auf Null festgelegt ist. Die Anwendung sollte dann den dwIndex Parameter inkrementieren und die RegEnumKey--Funktion aufrufen, bis keine Unterschlüssel vorhanden sind (d. h. die Funktion gibt ERROR_NO_MORE_ITEMS zurück).

Die Anwendung kann auch dwIndex- auf den Index des letzten Schlüssels für den ersten Aufruf der Funktion festlegen und den Index erhöhen, bis der Unterschlüssel mit Index 0 aufgezählt wird. Um den Index des letzten Unterschlüssels abzurufen, verwenden Sie den RegQueryInfoKey.

Während eine Anwendung die RegEnumKey--Funktion verwendet, sollte sie keine Aufrufe an Registrierungsfunktionen durchführen, die den abgefragten Schlüssel ändern können.

Anmerkung

Der winreg.h-Header definiert RegEnumKey als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- winreg.h (enthalten Windows.h)
Library Advapi32.lib
DLL- Advapi32.dll

Siehe auch

RegCloseKey-

RegCreateKeyEx-

RegDeleteKey-

RegEnumKeyEx-

RegOpenKeyEx-

RegQueryInfoKey-

Registrierungsfunktionen

Registrierungsübersicht