RegQueryValueW-Funktion (winreg.h)
Ruft die Daten ab, die dem Standard- oder unbenannten Wert eines angegebenen Registrierungsschlüssels zugeordnet sind. Die Daten müssen eine NULL-beendete Zeichenfolge sein.
Syntax
LSTATUS RegQueryValueW(
[in] HKEY hKey,
[in, optional] LPCWSTR lpSubKey,
[out, optional] LPWSTR lpData,
[in, out, optional] PLONG lpcbData
);
Parameter
[in] hKey
Ein Handle für einen geöffneten Registrierungsschlüssel. Der Schlüssel muss mit dem zugriffsrecht KEY_QUERY_VALUE 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, optional] lpSubKey
Der Name des Unterschlüssels des hKey-Parameters , für den der Standardwert abgerufen wird.
Bei Schlüsselnamen wird die Groß-/Kleinschreibung nicht beachtet.
Wenn dieser Parameter NULL ist oder auf eine leere Zeichenfolge verweist, ruft die Funktion den Standardwert für den durch hKey identifizierten Schlüssel ab.
Weitere Informationen finden Sie unter Größenbeschränkungen für Registrierungselemente.
[out, optional] lpData
Ein Zeiger auf einen Puffer, der den Standardwert des angegebenen Schlüssels empfängt.
Wenn lpValueNULL ist und lpcbValue nicht NULL ist, gibt die Funktion ERROR_SUCCESS zurück und speichert die Größe der Daten in Bytes in der Variablen, auf die von lpcbValue verwiesen wird. Dadurch kann eine Anwendung die beste Methode zum Zuweisen eines Puffers für die Daten des Werts ermitteln.
[in, out, optional] lpcbData
Ein Zeiger auf eine Variable, der die Größe des Puffers angibt, auf den der lpValue-Parameter in Bytes verweist. Wenn die Funktion zurückgibt, enthält diese Variable die Größe der in lpValue kopierten Daten, einschließlich aller beendenden NULL-Zeichen .
Wenn die Daten über den typ REG_SZ, REG_MULTI_SZ oder REG_EXPAND_SZ verfügen, umfasst diese Größe alle beendenden NULL-Zeichen oder Zeichen. Weitere Informationen finden Sie in den Hinweisen.
Wenn der angegebene Puffer lpValue nicht groß genug ist, um die Daten aufzunehmen, gibt die Funktion ERROR_MORE_DATA zurück und speichert die erforderliche Puffergröße in der Variablen, auf die von lpcbValue verwiesen wird. In diesem Fall ist der Inhalt des puffers lpValue nicht definiert.
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 der lpValue-Puffer zu klein ist, um den Wert zu empfangen, gibt die Funktion ERROR_MORE_DATA zurück.
Hinweise
Wenn die ANSI-Version dieser Funktion verwendet wird (entweder durch explizites Aufrufen von RegQueryValueA oder durch Nichtdefinition von UNICODE, bevor die Windows.h-Datei eingeschlossen wird), konvertiert diese Funktion die gespeicherte Unicode-Zeichenfolge in eine ANSI-Zeichenfolge, bevor sie in den puffer kopiert wird, der vom lpValue-Parameter angegeben ist.
Wenn die Daten über den typ REG_SZ, REG_MULTI_SZ oder REG_EXPAND_SZ verfügen, wurde die Zeichenfolge möglicherweise nicht mit den richtigen NULL-Endzeichen gespeichert. Selbst wenn die Funktion ERROR_SUCCESS zurückgibt, sollte die Anwendung daher sicherstellen, dass die Zeichenfolge ordnungsgemäß beendet wird, bevor sie sie verwendet. Andernfalls kann ein Puffer überschrieben werden. (Beachten Sie, dass REG_MULTI_SZ Zeichenfolgen zwei NULL-Endzeichen aufweisen sollten.)
Beachten Sie, dass Vorgänge, die auf bestimmte Registrierungsschlüssel zugreifen, umgeleitet werden. Weitere Informationen finden Sie unter Registrierungsvirtualisierungund 32-Bit- und 64-Bit-Anwendungsdaten in der Registrierung.
Hinweis
Der winreg.h-Header definiert RegQueryValue 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
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