SHRegGetUSValueA-Funktion (shlwapi.h)

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

Syntax

LSTATUS SHRegGetUSValueA(
  [in]                LPCSTR pszSubKey,
  [in, optional]      LPCSTR 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-endende 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-endende 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 der 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 Byte angibt, auf den pvData verweist. Wenn SHRegGetUSValue zurückgibt , enthält pcbData die Größe der in pvData kopierten Daten.

[in] fIgnoreHKCU

Typ: BOOL

Eine Variable, die angibt, unter welchem Schlüssel gesucht werden soll. Bei Festlegung auf TRUE 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 Fehlercode ungleich null 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 dieser Wert auf FALSE festgelegt ist, versucht SHRegGetUSValue zuerst, den Wert aus dem 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 keiner der 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 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 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
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)