Makro WdfObjectGetTypedContext

[Platí pro KMDF a UMDF]

WdfObjectGetTypedContext makro vrátí ukazatel na kontextový prostor objektu.

Syntaxe

PVOID WdfObjectGetTypedContext(
    Handle,
    Type
);

Parametry

Klika
Popisovač objektu architektury.

Typ
Název symbolu struktury definované ovladačem, která popisuje kontextový prostor objektu.

Návratová hodnota

WdfObjectGetTypedContext vrátí ukazatel na kontextový prostor zadaného objektu.

Poznámky

Pomocí WdfObjectGetTypedContext makra můžete získat ukazatel na kontextový prostor libovolného objektu architektury. Toto makro použijte jako alternativu k volání metody kontextového přístupového objektu specifické pro objekt, která je vytvořená WDF_DECLARE_CONTEXT_TYPE makrem nebo WDF_DECLARE_CONTEXT_TYPE_WITH_NAME makrem. Všimněte si, že pokud používáte WdfObjectGetTypedContext, musíte stále použít WDF_DECLARE_CONTEXT_TYPE nebo WDF_DECLARE_CONTEXT_TYPE_WITH_NAME deklarovat kontext objektu.

Další informace o těchto makrech naleznete v tématu Framework Object Context Space.

Příklady

Následující příklad kódu definuje kontextovou strukturu (MY_REQUEST_CONTEXT) pro objekt požadavku a pak zaregistruje strukturu.

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

WDF_DECLARE_CONTEXT_TYPE(MY_REQUEST_CONTEXT)

Následující příklad kódu vytvoří objekt požadavku a získá ukazatel na jeho kontextový prostor.

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
                                      );

Požadavky

Cílová platforma

univerzální

Minimální verze SLUŽBY KMDF

1.0

Minimální verze UMDF

2.0

Záhlaví

Wdfobject.h (včetně Wdf.h)

Knihovna

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

IRQL

Libovolná úroveň

Viz také

WDF_DECLARE_CONTEXT_TYPE

WDF_DECLARE_CONTEXT_TYPE_WITH_NAME