SHRegGetUSValueW-Funktion (shlwapi.h)

Ruft einen Wert aus einem Registrierungsunterschlüssel in einer benutzerspezifischen Unterstruktur (HKEY_CURRENT_USER oder HKEY_LOCAL_MACHINE) ab.

Syntax

LSTATUS SHRegGetUSValueW(
  [in]                LPCWSTR pszSubKey,
  [in, optional]      LPCWSTR pszValue,
  [in, out, optional] DWORD   *pdwType,
  [out, optional]     void    *pvData,
  [in, out, optional] DWORD   *pcbData,
  [in]                BOOL    fIgnoreHKCU,
  [in, optional]      void    *pvDefaultData,
  [in]                DWORD   dwDefaultDataSize
);

Parameter

[in] pszSubKey

Typ: LPCTSTR

Ein Zeiger auf eine NULL-Zeichenfolge mit dem Namen des Unterschlüssels relativ zu HKEY_LOCAL_MACHINE und HKEY_CURRENT_USER. Beispiel: "Software\MyCompany\MyProduct".

[in, optional] pszValue

Typ: LPCTSTR

Ein Zeiger auf eine NULL-Zeichenfolge mit dem Namen des Werts. Dieser Wert kann NULL sein.

[in, out, optional] pdwType

Typ: DWORD*

Ein Zeiger auf ein DWORD , das den Typ der im abgerufenen Wert gespeicherten Daten empfängt. Bei Verwendung von Standardwerten ist die Eingabe pdwType der Typ des Standardwerts. Mögliche Werte finden Sie unter Registrierungsdatentypen. Wenn keine Typinformationen erforderlich sind, kann dieser Parameter NULL sein.

[out, optional] pvData

Typ: void*

Ein Zeiger auf einen Puffer, der die Daten des Werts empfängt.

[in, out, optional] pcbData

Typ: DWORD*

Ein Zeiger auf eine Variable, die die Größe des Puffers in Bytes angibt, auf den von pvData verwiesen wird. Wenn SHRegGetUSValue zurückgibt , enthält pcbData die Größe der in pvData kopierten Daten.

[in] fIgnoreHKCU

Typ: BOOL

Eine Variable, die angibt, unter welchen Schlüssel gesucht werden soll. Wenn sie auf TRUE festgelegt ist, ignoriert SHRegGetUSValueHKEY_CURRENT_USER und gibt den Wert aus dem Schlüssel unter HKEY_LOCAL_MACHINE zurück.

[in, optional] pvDefaultData

Typ: void*

Ein Zeiger auf einen Puffer, der die Standarddaten des Werts empfängt.

[in] dwDefaultDataSize

Art: DWORD

Die Länge des Puffers in Bytes, auf den von pvDefaultData verwiesen wird.

Rückgabewert

Typ: LSTATUS

Gibt bei erfolgreicher Ausführung ERROR_SUCCESS oder andernfalls einen in Winerror.h definierten Nonzero-Fehlercode zurück. Sie können die FormatMessage-Funktion mit dem flag FORMAT_MESSAGE_FROM_SYSTEM verwenden, um eine generische Beschreibung des Fehlers abzurufen.

Hinweise

Wenn fIgnoreHKCU auf TRUE festgelegt ist, gibt SHRegGetUSValue den Wert aus dem Schlüssel unter HKEY_LOCAL_MACHINE zurück. Wenn auf FALSE festgelegt ist, versucht SHRegGetUSValue zunächst, den Wert vom Schlüssel unter HKEY_CURRENT_USER zurückzugeben. Wenn der Schlüssel jedoch nicht unter HKEY_CURRENT_USER gefunden wird, wird der Wert vom Schlüssel unter HKEY_LOCAL_MACHINE zurückgegeben. Wenn kein Schlüssel vorhanden ist oder ein Fehler aufgetreten ist und dwDefaultDataSize nichtzero ist, werden die Standarddaten nach pvData kopiert und ERROR_SUCCESS zurückgegeben. ERROR_SUCCESS gibt sowohl für Standarddaten als auch für Nicht-Standarddaten zurück, und es gibt keine Möglichkeit, zu unterscheiden, welcher Wert in pvData kopiert wird. Um die Verwendung von Standarddaten zu verhindern, legen Sie pvDefaultData auf NULL und dwDefaultDataSize auf Null fest.

Diese Funktion öffnet den Schlüssel bei jeder Verwendung. Wenn Ihr Code das Abrufen einer Reihe von Werten aus demselben Schlüssel umfasst, ist es effizienter, den Schlüssel einmal mit SHRegOpenUSKey zu öffnen und dann SHRegQueryUSValue zum Abrufen der Daten zu verwenden.

Hinweis

Der shlwapi.h-Header definiert SHRegGetUSValue als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante 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, Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile shlwapi.h
Bibliothek Shlwapi.lib
DLL Shlwapi.dll (Version 4.71 oder höher)