Freigeben über


RegQueryInfoKeyA-Funktion (winreg.h)

Ruft Informationen zum angegebenen Registrierungsschlüssel ab.

Syntax

LSTATUS RegQueryInfoKeyA(
  [in]                HKEY      hKey,
  [out, optional]     LPSTR     lpClass,
  [in, out, optional] LPDWORD   lpcchClass,
                      LPDWORD   lpReserved,
  [out, optional]     LPDWORD   lpcSubKeys,
  [out, optional]     LPDWORD   lpcbMaxSubKeyLen,
  [out, optional]     LPDWORD   lpcbMaxClassLen,
  [out, optional]     LPDWORD   lpcValues,
  [out, optional]     LPDWORD   lpcbMaxValueNameLen,
  [out, optional]     LPDWORD   lpcbMaxValueLen,
  [out, optional]     LPDWORD   lpcbSecurityDescriptor,
  [out, optional]     PFILETIME lpftLastWriteTime
);

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_PERFORMANCE_DATA
   HKEY_USERS

[out, optional] lpClass

Ein Zeiger auf einen Puffer, der die benutzerdefinierte Klasse des Schlüssels empfängt. Dieser Parameter kann NULL sein.

[in, out, optional] lpcchClass

Ein Zeiger auf eine Variable, die die Größe des Puffers angibt, auf den der lpClass-Parameter in Zeichen verweist.

Die Größe sollte das beendende NULL-Zeichen enthalten. Wenn die Funktion zurückgibt, enthält diese Variable die Größe der Klassenzeichenfolge, die im Puffer gespeichert ist. Die zurückgegebene Anzahl enthält nicht das beendende NULL-Zeichen . Wenn der Puffer nicht groß genug ist, gibt die Funktion ERROR_MORE_DATA zurück, und die Variable enthält die Größe der Zeichenfolge in Zeichen, ohne das beendende NULL-Zeichen zu zählen.

Wenn lpClassNULL ist, kann lpcClassNULL sein.

Wenn der lpClass-Parameter eine gültige Adresse ist, der lpcClass-Parameter jedoch nicht, z. B. NULL, gibt die Funktion ERROR_INVALID_PARAMETER zurück.

lpReserved

Dieser Parameter ist reserviert und muss NULL sein.

[out, optional] lpcSubKeys

Ein Zeiger auf eine Variable, die die Anzahl von Unterschlüsseln empfängt, die im angegebenen Schlüssel enthalten sind. Dieser Parameter kann NULL sein.

[out, optional] lpcbMaxSubKeyLen

Ein Zeiger auf eine Variable, die die Größe des Unterschlüssels des Schlüssels mit dem längsten Namen in ANSI-Zeichen ohne das beendende NULL-Zeichen empfängt. Dieser Parameter kann NULL sein.

[out, optional] lpcbMaxClassLen

Ein Zeiger auf eine Variable, die die Größe der längsten Zeichenfolge empfängt, die eine Unterschlüsselklasse in ANSI-Zeichen angibt. Die zurückgegebene Anzahl enthält nicht das beendende NULL-Zeichen . Dieser Parameter kann NULL sein.

[out, optional] lpcValues

Ein Zeiger auf eine Variable, die die Anzahl der Werte empfängt, die dem Schlüssel zugeordnet sind. Dieser Parameter kann NULL sein.

[out, optional] lpcbMaxValueNameLen

Ein Zeiger auf eine Variable, die die Größe des längsten Wertnamens des Schlüssels in ANSI-Zeichen empfängt. Die Größe enthält nicht das beendende NULL-Zeichen . Dieser Parameter kann NULL sein.

[out, optional] lpcbMaxValueLen

Ein Zeiger auf eine Variable, die die Größe der längsten Datenkomponente unter den Werten des Schlüssels in Bytes empfängt. Dieser Parameter kann NULL sein.

[out, optional] lpcbSecurityDescriptor

Ein Zeiger auf eine Variable, die die Größe der Sicherheitsbeschreibung des Schlüssels in Bytes empfängt. Dieser Parameter kann NULL sein.

[out, optional] lpftLastWriteTime

Ein Zeiger auf eine FILETIME-Struktur , die die letzte Schreibzeit empfängt. Dieser Parameter kann NULL sein.

Die Funktion legt die Member der FILETIME-Struktur so fest, dass sie den Zeitpunkt angeben, zu dem der Schlüssel oder ein beliebiger seiner Werteinträge zuletzt geändert wird.

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 lpClass-Puffer zu klein ist, um den Namen der Klasse zu empfangen, gibt die Funktion ERROR_MORE_DATA zurück.

Hinweise

Hinweis

In Legacyversionen von Windows wird diese API auch von kernel32.dll verfügbar gemacht.

Anforderungen

Anforderung Wert
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

FILETIME

RegDeleteKey

RegEnumKeyEx

RegEnumValue

RegQueryValueEx

Registrierungsfunktionen

Registrierungsübersicht