Partager via


WdfRegistryQueryString, fonction (wdfregistry.h)

[S’applique à KMDF et UMDF]

La méthode WdfRegistryQueryString récupère les données de chaîne actuellement affectées à une valeur de chaîne de Registre spécifiée et affecte la chaîne à un objet de chaîne d’infrastructure spécifié.

Syntaxe

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

Paramètres

[in] Key

Handle vers un objet de clé de Registre qui représente une clé de Registre ouverte.

[in] ValueName

Pointeur vers une structure UNICODE_STRING qui contient un nom pour la valeur de Registre.

[in] String

Handle vers un objet de chaîne d’infrastructure. L’infrastructure affecte les données de chaîne de la valeur de Registre à cet objet.

Valeur de retour

WdfRegistryQueryString retourne STATUS_SUCCESS si l’opération réussit. Sinon, la méthode peut retourner l’une des valeurs suivantes :

Retourner le code Description
STATUS_INVALID_DEVICE_REQUEST

WdfRegistryQueryString n’a pas été appelée à IRQL = PASSIVE_LEVEL.

STATUS_INVALID_PARAMETER
Un paramètre non valide a été spécifié.
STATUS_INSUFFICIENT_RESOURCES
Il n’y avait pas de mémoire suffisante pour terminer l’opération.
STATUS_ACCESS_DENIED
Le pilote n’a pas ouvert la clé de Registre avec KEY_QUERY_VALUE, KEY_READ ou un accès KEY_ALL_ACCESS.
STATUS_OBJECT_TYPE_MISMATCH
Le type de données de la valeur de Registre que le paramètre ValueName spécifié n’a pas été REG_SZ.
STATUS_OBJECT_NAME_NOT_FOUND
La valeur du Registre n’a pas été disponible.
STATUS_RESOURCE_DATA_NOT_FOUND
La valeur de Registre existe sous la clé spécifiée, mais est vide.
 

Pour obtenir la liste des autres valeurs de retour que la méthode WdfRegistryQueryString peut retourner, consultez Framework Object Creation Errors.

Cette méthode peut également retourner d’autres valeurs NTSTATUS .

Une vérification de bogue se produit si le pilote fournit un handle d’objet non valide.

Remarques

Pour obtenir une chaîne à partir d’un objet de chaîne, votre pilote peut appeler WdfStringGetUnicodeString.

Pour plus d’informations sur les objets de clé de Registre, consultez Utilisation du Registre dans Framework-Based Drivers.

Exemples

L’exemple de code suivant crée un objet de chaîne, récupère les données de chaîne à partir d’une clé de Registre et obtient les données de chaîne de l’objet string.

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
                                  );
    }
}

Exigences

Exigence Valeur
plateforme cible Universel
version minimale de KMDF 1.0
version minimale de UMDF 2.0
d’en-tête wdfregistry.h (include Wdf.h)
bibliothèque Wdf01000.sys (KMDF) ; WUDFx02000.dll (UMDF)
IRQL PASSIVE_LEVEL
règles de conformité DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Voir aussi

UNICODE_STRING

WdfRegistryQueryMemory

WdfRegistryQueryMultiString

WdfRegistryQueryULong

WdfRegistryQueryUnicodeString

WdfRegistryQueryValue

WdfStringCreate

WdfStringGetUnicodeString