macro WDF_DECLARE_CONTEXT_TYPE_WITH_NAME
[Aplica-se a KMDF e UMDF]
A macro WDF_DECLARE_CONTEXT_TYPE_WITH_NAME cria um método acessador com um nome especificado para o espaço de contexto específico do objeto de um driver.
Sintaxe
void WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(
_contexttype,
_castingfunction
);
Parâmetros
_Contexttype
O nome do tipo de estrutura de uma estrutura definida pelo driver que descreve o conteúdo do espaço de contexto de um objeto.
_castingfunction
Um nome de rotina da linguagem C. A macro usa esse nome como o nome do método acessador que ele cria para o espaço de contexto do objeto.
Retornar valor
Essa macro não retorna um valor.
Comentários
Para obter mais informações sobre como usar essa macro, consulte Espaço de Contexto de Objeto da Estrutura.
Exemplos
O exemplo de código a seguir define uma estrutura de contexto (MY_REQUEST_CONTEXT) para um objeto de solicitação. Em seguida, o exemplo invoca a macro WDF_DECLARE_CONTEXT_TYPE_WITH_NAME para registrar a estrutura e especifica que o método acessador de contexto será nomeado 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)
O exemplo de código a seguir cria um objeto de solicitação e usa o método acessador RequestGetMyContext para obter um ponteiro para o espaço de contexto do objeto.
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);
Requisitos
Plataforma de destino |
Universal |
Versão mínima do KMDF |
1.0 |
Versão mínima do UMDF |
2,0 |
parâmetro |
Wdfobject.h (inclua Wdf.h) |