Condividi tramite


macro WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE

[Si applica a KMDF e UMDF]

La macro WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE inizializza la struttura di WDF_OBJECT_ATTRIBUTES di un driver e inserisce le informazioni di contesto definite dal driver di un oggetto nella struttura.

Sintassi

void WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(
    _attributes,
    _contexttype
);

Parametri

_attributes
Puntatore a una struttura WDF_OBJECT_ATTRIBUTES.

_contexttype
Nome del tipo di struttura di una struttura definita dal driver che descrive il contenuto dello spazio di contesto di un oggetto.

Valore restituito

Questa macro non restituisce un valore.

Osservazioni:

Prima di chiamare WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE, è necessario chiamare WDF_DECLARE_CONTEXT_TYPE o WDF_DECLARE_CONTEXT_TYPE_WITH_NAME a livello globale (non all'interno di una funzione).

La macro WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE combina la funzione WDF_OBJECT_ATTRIBUTES_INIT e la macro WDF_OBJECT_ATTRIBUTES_SET_CONTEXT_TYPE.

Esempi

Nell'esempio di codice seguente viene definita una struttura di contesto WDM_NDIS_REQUEST. Nell'esempio viene quindi richiamata la macro WDF_DECLARE_CONTEXT_TYPE_WITH_NAME per registrare la struttura e specificare che il metodo della funzione di accesso al contesto verrà denominato RequestGetMyContext. Quindi, in una funzione, l'esempio alloca una struttura WDF_OBJECT_ATTRIBUTES e quindi inizializza la struttura WDF_OBJECT_ATTRIBUTES.

typedef struct _WDM_NDIS_REQUEST
{
   PMP_ADAPTER  Adapter;
   NDIS_OID  Oid;
   NDIS_REQUEST_TYPE  RequestType;
   PVOID  InformationBuffer;
   ULONG  InformationBufferLength;
   PULONG  BytesReadOrWritten;
   PULONG  BytesNeeded;
} WDM_NDIS_REQUEST, *PWDM_NDIS_REQUEST;

WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(WDM_NDIS_REQUEST, RequestGetMyContext);

// above are in global space

...

WDF_OBJECT_ATTRIBUTES  attributes;

WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE( &attributes, WDM_NDIS_REQUEST );

Requisiti

Piattaforma di destinazione

universale

Versione minima di KMDF

1.0

Versione minima di UMDF

2.0

Header

Wdfobject.h (include Wdf.h)

Vedere anche

WDF_OBJECT_ATTRIBUTES

WDF_OBJECT_ATTRIBUTES_INIT

WDF_OBJECT_ATTRIBUTES_SET_CONTEXT_TYPE