makro WDF_DECLARE_CONTEXT_TYPE_WITH_NAME
[Dotyczy usług KMDF i UMDF]
Makro WDF_DECLARE_CONTEXT_TYPE_WITH_NAME tworzy metodę dostępu o określonej nazwie dla przestrzeni kontekstowej specyficznej dla obiektu sterownika.
Składnia
void WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(
_contexttype,
_castingfunction
);
Parametry
_contexttype
Nazwa typu struktury struktury struktury zdefiniowanej przez sterownik, która opisuje zawartość przestrzeni kontekstowej obiektu.
_castingfunction
Nazwa procedury języka C. Makro używa tej nazwy jako nazwy metody dostępu tworzonej dla przestrzeni kontekstowej obiektu.
Wartość zwracana
To makro nie zwraca wartości.
Uwagi
Aby uzyskać więcej informacji na temat korzystania z tego makra, zobacz Framework Object Context Space.
Przykłady
Poniższy przykład kodu definiuje strukturę kontekstu (MY_REQUEST_CONTEXT) dla obiektu żądania. Następnie przykład wywołuje makro WDF_DECLARE_CONTEXT_TYPE_WITH_NAME, aby zarejestrować strukturę i określić, że metoda dostępu kontekstu będzie mieć nazwę 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)
Poniższy przykład kodu tworzy obiekt żądania, a następnie używa metody dostępu RequestGetMyContext w celu uzyskania wskaźnika do przestrzeni kontekstowej obiektu.
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);
Wymagania
Platforma docelowa |
universal |
Minimalna wersja usługi KMDF |
1.0 |
Minimalna wersja UMDF |
2.0 |
Nagłówek |
Wdfobject.h (w tym Wdf.h) |