WdfObjectGetTypedContext-makro

[Gäller för KMDF och UMDF]

WdfObjectGetTypedContext makrot returnerar en pekare till ett objekts kontextutrymme.

Syntax

PVOID WdfObjectGetTypedContext(
    Handle,
    Type
);

Parameterar

Handtag
Ett handtag till ett ramverksobjekt.

Typ
Symbolnamnet för en drivrutinsdefinierad struktur som beskriver ett objekts kontextutrymme.

Returvärde

WdfObjectGetTypedContext returnerar en pekare till det angivna objektets kontextutrymme.

Anmärkningar

Du kan använda WdfObjectGetTypedContext makro för att hämta en pekare till ett ramverksobjekts kontextutrymme. Använd det här makrot som ett alternativ till att anropa en objektspecifik kontextåtkomstmetod som skapas av WDF_DECLARE_CONTEXT_TYPE makrot eller WDF_DECLARE_CONTEXT_TYPE_WITH_NAME makrot. Observera att om du använder WdfObjectGetTypedContextmåste du fortfarande använda WDF_DECLARE_CONTEXT_TYPE eller WDF_DECLARE_CONTEXT_TYPE_WITH_NAME för att deklarera objektkontexten.

Mer information om dessa makron finns i Framework Object Context Space.

Exempel

Följande kodexempel definierar en kontextstruktur (MY_REQUEST_CONTEXT) för ett begärandeobjekt och registrerar sedan strukturen.

typedef struct _MY_REQUEST_CONTEXT {
  LIST_ENTRY ListEntry;
  WDFMEMORY Memory;
} MY_REQUEST_CONTEXT, *PMY_REQUEST_CONTEXT;

WDF_DECLARE_CONTEXT_TYPE(MY_REQUEST_CONTEXT)

Följande kodexempel skapar ett begärandeobjekt och hämtar en pekare till dess kontextutrymme.

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 = WdfObjectGetTypedContext(
                                      Request,
                                      MY_REQUEST_CONTEXT
                                      );

Krav

Målplattform

Universell

Lägsta KMDF-version

1.0

Lägsta UMDF-version

2.0

Header

Wdfobject.h (inkludera Wdf.h)

Bibliotek

Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)

IRQL

Alla nivåer

Se även

WDF_DECLARE_CONTEXT_TYPE

WDF_DECLARE_CONTEXT_TYPE_WITH_NAME