共用方式為


WdfObjectGetTypedContext 巨集

[適用於 KMDF 和 UMDF]

WdfObjectGetTypedContext 巨集會傳回對象的內容空間指標。

語法

PVOID WdfObjectGetTypedContext(
    Handle,
    Type
);

參數

Handle
架構物件的句柄。

型別
描述物件內容空間之驅動程式定義結構的符號名稱。

返回值

WdfObjectGetTypedContext 會傳回指定對象的內容空間指標。

備註

您可以使用 WdfObjectGetTypedContext 巨集取得任何架構物件內容空間的指標。 使用此巨集做為替代方法,呼叫由 WDF_DECLARE_CONTEXT_TYPE 巨集或 WDF_DECLARE_CONTEXT_TYPE_WITH_NAME 巨集所建立的物件特定內容存取子方法。 請注意,如果您使用 WdfObjectGetTypedContext,您仍必須使用 WDF_DECLARE_CONTEXT_TYPE 或 WDF_DECLARE_CONTEXT_TYPE_WITH_NAME 來宣告對象內容。

如需這些巨集的詳細資訊,請參閱 Framework 物件內容空間

範例

下列程式代碼範例會定義要求對象的內容結構 (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)

下列程式代碼範例會建立要求物件,並取得其內容空間的指標。

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

需求

目標平臺

通用

最低 KMDF 版本

1.0

最低UMDF版本

2.0

頁首

Wdfobject.h (包括 Wdf.h)

圖書館

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

IRQL

任何層級

另請參閱

WDF_DECLARE_CONTEXT_TYPE

WDF_DECLARE_CONTEXT_TYPE_WITH_NAME