Freigeben über


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 mit Null beendete 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 mit Null beendete Zeichenfolge mit dem Namen des Werts. Dieser Wert kann NULL-sein.

[in, out, optional] pdwType

Typ: DWORD*-

Ein Zeiger auf eine DWORD-, die den Datentyp empfängt, der im abgerufenen Wert gespeichert ist. Bei Verwendung von Standardwerten ist die Eingabe pdwType- der Typ des Standardwerts. Mögliche Werte finden Sie unter Registrierungsdatentypen. Wenn Typinformationen nicht erforderlich sind, kann dieser Parameter NULL-werden.

[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 Byte angibt, auf den pvData-verweist. Wenn SHRegGetUSValue zurückgibt, enthält pcbData- die Größe der in pvDatakopierten Daten.

[in] fIgnoreHKCU

Typ: BOOL-

Eine Variable, die angibt, unter welchem Schlüssel gesucht werden soll. Wenn dieser Wert auf TRUEfestgelegt ist, ignoriert SHRegGetUSValueHKEY_CURRENT_USER und gibt den Wert aus dem Schlüssel unter HKEY_LOCAL_MACHINEzurück.

[in, optional] pvDefaultData

Typ: void*

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

[in] dwDefaultDataSize

Typ: DWORD-

Die Länge des Puffers in Bytes, auf den pvDefaultDataverweist.

Rückgabewert

Typ: LSTATUS-

Gibt ERROR_SUCCESS zurück, wenn dies erfolgreich ist, oder wenn der Fehlercode nicht in Winerror.h definiert ist. Sie können die FormatMessage--Funktion mit dem FORMAT_MESSAGE_FROM_SYSTEM Flag verwenden, um eine generische Beschreibung des Fehlers abzurufen.

Bemerkungen

Wenn fIgnoreHKCU- auf TRUEfestgelegt ist, gibt SHRegGetUSValue den Wert aus dem Schlüssel unter HKEY_LOCAL_MACHINEzurück. Wenn dieser Wert auf FALSEfestgelegt ist, versucht SHRegGetUSValue zuerst, den Wert aus dem Schlüssel unter HKEY_CURRENT_USERzurückzugeben. Wenn der Schlüssel jedoch unter HKEY_CURRENT_USERnicht gefunden wird, wird der Wert aus dem Schlüssel unter HKEY_LOCAL_MACHINEzurückgegeben. Wenn kein Schlüssel vorhanden ist oder ein Fehler aufgetreten ist und dwDefaultDataSize ungleich Null ist, werden die Standarddaten in pvData- kopiert und ERROR_SUCCESS zurückgegeben. ERROR_SUCCESS gibt sowohl für Standarddaten als auch für nicht standardmäßige Daten 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 NULL- und dwDefaultDataSize auf Null fest.

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

Anmerkung

Der Header "shlwapi.h" definiert SHRegGetUSValue 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, Windows XP [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- shlwapi.h
Library Shlwapi.lib
DLL- Shlwapi.dll (Version 4.71 oder höher)