Freigeben über


WdfRegistryQueryString-Funktion (wdfregistry.h)

[Gilt für KMDF und UMDF]

Die WdfRegistryQueryString--Methode ruft die Zeichenfolgendaten ab, die derzeit einem angegebenen Registrierungszeichenfolgenwert zugewiesen sind, und weist die Zeichenfolge einem angegebenen Framework-Zeichenfolgenobjekt zu.

Syntax

NTSTATUS WdfRegistryQueryString(
  [in] WDFKEY           Key,
  [in] PCUNICODE_STRING ValueName,
  [in] WDFSTRING        String
);

Parameter

[in] Key

Ein Handle zu einem Registrierungsschlüsselobjekt, das einen geöffneten Registrierungsschlüssel darstellt.

[in] ValueName

Ein Zeiger auf eine UNICODE_STRING Struktur, die einen Namen für den Registrierungswert enthält.

[in] String

Ein Handle zu einem Framework-Zeichenfolgenobjekt. Das Framework weist diesem Objekt die Zeichenfolgendaten des Registrierungswerts zu.

Rückgabewert

WdfRegistryQueryString gibt STATUS_SUCCESS zurück, wenn der Vorgang erfolgreich ist. Andernfalls gibt die Methode möglicherweise einen der folgenden Werte zurück:

Rückgabecode Beschreibung
STATUS_INVALID_DEVICE_REQUEST

WdfRegistryQueryString- wurde bei IRQL = PASSIVE_LEVEL nicht aufgerufen.

STATUS_INVALID_PARAMETER
Es wurde ein ungültiger Parameter angegeben.
STATUS_INSUFFICIENT_RESOURCES
Zum Abschließen des Vorgangs war nicht genügend Arbeitsspeicher vorhanden.
STATUS_ACCESS_DENIED
Der Treiber hat den Registrierungsschlüssel nicht mit KEY_QUERY_VALUE, KEY_READ oder KEY_ALL_ACCESS Zugriff geöffnet.
STATUS_OBJECT_TYPE_MISMATCH
Der Datentyp des Registrierungswerts, den der angegebene parameter ValueName wurde nicht REG_SZ.
STATUS_OBJECT_NAME_NOT_FOUND
Der Registrierungswert war nicht verfügbar.
STATUS_RESOURCE_DATA_NOT_FOUND
Der Registrierungswert ist unter dem angegebenen Schlüssel vorhanden, ist jedoch leer.
 

Eine Liste mit anderen Rückgabewerten, die die WdfRegistryQueryString- Methode möglicherweise zurückgeben kann, finden Sie unter Framework-Objekterstellungsfehler.

Diese Methode kann auch andere NTSTATUS-Wertezurückgeben.

Wenn der Treiber ein ungültiges Objekthandle bereitstellt, tritt eine Fehlerüberprüfung auf.

Bemerkungen

Um eine Zeichenfolge aus einem Zeichenfolgenobjekt abzurufen, kann Ihr Treiber WdfStringGetUnicodeString-aufrufen.

Weitere Informationen zu Registrierungsschlüsselobjekten finden Sie unter Verwenden der Registrierung in Framework-Based Drivers.

Beispiele

Im folgenden Codebeispiel wird ein Zeichenfolgenobjekt erstellt, Zeichenfolgendaten aus einem Registrierungsschlüssel abgerufen und die Zeichenfolgendaten aus dem Zeichenfolgenobjekt abgerufen.

UNICODE_STRING str;
WDFSTRING string;
NTSTATUS status;
DECLARE_CONST_UNICODE_STRING(valueName, STRING_VALUE_NAME);

status = WdfStringCreate(
                         NULL,
                         WDF_NO_OBJECT_ATTRIBUTES,
                         &string
                         );
if (NT_SUCCESS(status)) {
    status = WdfRegistryQueryString(
                                    Key, 
                                    &valueName,
                                    string
                                    );
    if (NT_SUCCESS(status)) {
        WdfStringGetUnicodeString(
                                  string,
                                  &str
                                  );
    }
}

Anforderungen

Anforderung Wert
Zielplattform- Universal
Minimale KMDF-Version 1.0
Mindest-UMDF-Version 2.0
Header- wdfregistry.h (include Wdf.h)
Library Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL- PASSIVE_LEVEL
DDI-Complianceregeln DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Siehe auch

UNICODE_STRING

WdfRegistryQueryMemory-

WdfRegistryQueryMultiString-

WdfRegistryQueryULong-

WdfRegistryQueryUnicodeString-

WdfRegistryQueryValue-

WdfStringCreate-

WdfStringGetUnicodeString-