Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Öffnet den angegebenen Registrierungsschlüssel.
Syntax
LSTATUS RegOpenKeyA(
[in] HKEY hKey,
[in, optional] LPCSTR lpSubKey,
[out] PHKEY phkResult
);
Parameter
[in] hKey
Ein Handle zu einem geöffneten Registrierungsschlüssel. Dieses Handle wird von der RegCreateKeyEx-- oder RegOpenKeyEx--Funktion zurückgegeben, oder es kann sich um einen der folgenden vordefinierten Schlüssel:
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_CONFIG
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_USERS
[in, optional] lpSubKey
Der Name des registrierungsschlüssels, der geöffnet werden soll. Dieser Schlüssel muss ein Unterschlüssel des schlüssels sein, der durch den hKey Parameter identifiziert wird.
Bei Schlüsselnamen wird die Groß-/Kleinschreibung nicht beachtet.
Wenn dieser Parameter NULL- oder ein Zeiger auf eine leere Zeichenfolge ist, gibt die Funktion dasselbe Handle zurück, das übergeben wurde.
Weitere Informationen finden Sie unter Registrierungselementgrößenbeschränkungen.
[out] phkResult
Ein Zeiger auf eine Variable, die ein Handle für den geöffneten Schlüssel empfängt. Wenn der Schlüssel nicht einer der vordefinierten Registrierungsschlüssel ist, rufen Sie die RegCloseKey--Funktion auf, nachdem Sie die Verwendung des Handle abgeschlossen haben.
Rückgabewert
Wenn die Funktion erfolgreich ist, wird der Rückgabewert ERROR_SUCCESS.
Wenn die Funktion fehlschlägt, ist der Rückgabewert ein nichtzero-Fehlercode, der in Winerror.h definiert ist. Sie können die FormatMessage--Funktion mit dem FORMAT_MESSAGE_FROM_SYSTEM Flag verwenden, um eine allgemeine Beschreibung des Fehlers zu erhalten.
Bemerkungen
Die RegOpenKey--Funktion verwendet die Standardsicherheitszugriffsmaske, um einen Schlüssel zu öffnen. Wenn beim Öffnen der Taste ein anderer Zugriffsrecht erforderlich ist, schlägt die Funktion fehl und gibt ERROR_ACCESS_DENIED zurück. Eine Anwendung sollte die RegOpenKeyEx--Funktion verwenden, um in dieser Situation eine Zugriffsmaske anzugeben.
RegOpenKey- erstellt nicht den angegebenen Schlüssel, wenn der Schlüssel nicht in der Datenbank vorhanden ist.
Wenn Ihr Dienst oder Ihre Anwendung unterschiedliche Benutzer imitiert, verwenden Sie diese Funktion nicht mit HKEY_CURRENT_USER. Rufen Sie stattdessen die RegOpenCurrentUser-Funktion auf.
Anmerkung
Der winreg.h-Header definiert RegOpenKey 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 |