macro WDF_DECLARE_CONTEXT_TYPE_WITH_NAME
[S’applique à KMDF et UMDF]
La macro WDF_DECLARE_CONTEXT_TYPE_WITH_NAME crée une méthode accesseur avec un nom spécifié pour l’espace de contexte propre à un objet d’un pilote.
Syntaxe
void WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(
_contexttype,
_castingfunction
);
Paramètres
_contexttype
Nom de 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 en langage C. La macro utilise ce nom comme nom de la méthode accesseur qu’elle crée pour l’espace de contexte de l’objet.
Valeur retournée
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 d’accesseur RequestGetMyContext 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);
Configuration requise
Plateforme cible |
Universal |
Version KMDF minimale |
1.0 |
Version UMDF minimale |
2.0 |
En-tête |
Wdfobject.h (inclure Wdf.h) |