Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
[S’applique à KMDF et UMDF]
La macro WDF_DECLARE_CONTEXT_TYPE_WITH_NAME crée une méthode d’accesseur avec un nom spécifié pour l’espace de contexte spécifique à l’objet d’un pilote.
Syntaxe
void WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(
_contexttype,
_castingfunction
);
Paramètres
_contexttype
Nom du type de structure d’une structure définie par le pilote qui décrit le contenu de l’espace de contexte d’un objet.
_castingfunction
Nom de routine de langage C. La macro utilise ce nom comme nom pour la méthode d’accesseur qu’elle crée pour l’espace de contexte de l’objet.
Valeur de retour
Cette macro ne retourne pas de valeur.
Remarques
Pour plus d’informations sur l’utilisation de cette macro, consultez 'espace de contexte d’objet Framework.
Exemples
L’exemple de code suivant définit une structure de contexte (MY_REQUEST_CONTEXT) pour un objet de requête. Ensuite, l’exemple appelle la macro WDF_DECLARE_CONTEXT_TYPE_WITH_NAME pour inscrire la structure et spécifier que la méthode d’accesseur de contexte sera nommée RequestGetMyContext.
typedef struct _MY_REQUEST_CONTEXT {
LIST_ENTRY ListEntry;
WDFMEMORY Memory;
} MY_REQUEST_CONTEXT, *PMY_REQUEST_CONTEXT;
WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(MY_REQUEST_CONTEXT, RequestGetMyContext)
L’exemple de code suivant crée un objet de requête, puis utilise la méthode RequestGetMyContext accesseur pour obtenir un pointeur vers l’espace de contexte de l’objet.
WDFREQUEST Request;
WDF_OBJECT_ATTRIBUTES MyRequestObjectAttributes;
PMY_REQUEST_CONTEXT pMyContext;
WDF_OBJECT_ATTRIBUTES_INIT(&MyRequestObjectAttributes);
WDF_OBJECT_ATTRIBUTES_SET_CONTEXT_TYPE(
&MyRequestObjectAttributes,
MY_REQUEST_CONTEXT
);
status = WdfRequestCreate(
&MyRequestObjectAttributes
NULL,
&Request
);
if (!NT_SUCCESS(status)) {
return status;
}
pMyContext = RequestGetMyContext(Request);
Spécifications
Plateforme cible |
universel |
Version minimale de KMDF |
1.0 |
Version minimale de UMDF |
2.0 |
En-tête de page |
Wdfobject.h (include Wdf.h) |