macro WDF_DECLARE_CONTEXT_TYPE
[Si applica a KMDF e UMDF]
La macro WDF_DECLARE_CONTEXT_TYPE crea un nome e un metodo di accesso per lo spazio di contesto specifico di un driver.
Sintassi
void WDF_DECLARE_CONTEXT_TYPE(
_contexttype
);
Parametri
_Contexttype
Nome del tipo di struttura di una struttura definita dal driver che descrive il contenuto dello spazio di contesto di un oggetto.
Valore restituito
Questa macro non restituisce un valore.
Commenti
Per altre informazioni sull'uso di questa macro, vedere Framework Object Context Space.
Esempio
L'esempio di codice seguente definisce una struttura di contesto (MY_REQUEST_CONTEXT) per un oggetto request, registra la struttura e quindi richiama la macro WDF_DECLARE_CONTEXT_TYPE. La macro crea un metodo di accesso per la struttura del contesto e nomi il metodo WdfObjectGet_MY_REQUEST_CONTEXT.
typedef struct _MY_REQUEST_CONTEXT {
LIST_ENTRY ListEntry;
WDFMEMORY Memory;
} MY_REQUEST_CONTEXT, *PMY_REQUEST_CONTEXT;
WDF_DECLARE_CONTEXT_TYPE(MY_REQUEST_CONTEXT)
Nell'esempio di codice seguente viene creato un oggetto request e quindi viene usato il metodo di accesso WdfObjectGet_MY_REQUEST_CONTEXT per ottenere un puntatore allo spazio di contesto dell'oggetto.
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 = WdfObjectGet_MY_REQUEST_CONTEXT(Request);
Requisiti
Piattaforma di destinazione |
Universale |
Versione KMDF minima |
1.0 |
Versione UMDF minima |
2,0 |
Intestazione |
Wdfobject.h (includere Wdf.h) |