RegEnumKeyA-Funktion (winreg.h)
Listet die Unterschlüssel des angegebenen offenen Registrierungsschlüssels auf. Die Funktion ruft bei jedem Aufruf den Namen eines Unterschlüssels ab.
Syntax
LSTATUS RegEnumKeyA(
[in] HKEY hKey,
[in] DWORD dwIndex,
[out] LPSTR lpName,
[in] DWORD cchName
);
Parameter
[in] hKey
Ein Handle für einen geöffneten Registrierungsschlüssel. Der Schlüssel muss mit dem zugriffsrecht KEY_ENUMERATE_SUB_KEYS geöffnet worden sein. Weitere Informationen finden Sie unter Sicherheit und Zugriffsrechte für Registrierungsschlüssel.
Dieses Handle wird von der RegCreateKeyEx-, RegCreateKeyTransacted-, RegOpenKeyEx- oder RegOpenKeyTransacted-Funktion zurückgegeben. Es kann auch einer der folgenden vordefinierten Schlüssel sein:
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_CONFIG
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_USERS
[in] dwIndex
Der Index des abzurufenden Unterschlüssels von hKey . Dieser Wert sollte für den ersten Aufruf der RegEnumKey-Funktion 0 sein und dann für nachfolgende Aufrufe inkrementiert 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 beendenden NULL-Zeichens. Diese Funktion kopiert nur den Namen des Unterschlüssels, nicht die vollständige Schlüsselhierarchie, in den Puffer.
Weitere Informationen finden Sie unter Größenbeschränkungen für Registrierungselemente.
[in] cchName
Die Größe des Puffers, auf den der lpName-Parameter in TCHARs verweist. Um die erforderliche Puffergröße zu bestimmen, verwenden Sie die RegQueryInfoKey-Funktion , um die Größe des größten Unterschlüssels für den durch den hKey-Parameter identifizierten Schlüssel zu bestimmen.
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.
Hinweise
Zum Auflisten von Unterschlüsseln sollte eine Anwendung zunächst die RegEnumKey-Funktion aufrufen, wobei der dwIndex-Parameter auf 0 festgelegt ist. Die Anwendung sollte dann den dwIndex-Parameter inkrementieren und die RegEnumKey-Funktion aufrufen, bis keine weiteren Unterschlüssel vorhanden sind (d. h. die Funktion gibt ERROR_NO_MORE_ITEMS zurück).
Die Anwendung kann dwIndex auch auf den Index des letzten Schlüssels beim ersten Aufruf der Funktion festlegen und den Index dekrementieren, bis der Unterschlüssel mit Index 0 aufgezählt wird. Verwenden Sie regQueryInfoKey, um den Index des letzten Unterschlüssels abzurufen.
Während eine Anwendung die RegEnumKey-Funktion verwendet, sollte sie keine Registrierungsfunktionen aufrufen, die den abgefragten Schlüssel ändern könnten.
Hinweis
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 nicht codierungsneutralem Code 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 |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | winreg.h (einschließlich Windows.h) |
Bibliothek | Advapi32.lib |
DLL | Advapi32.dll |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für