Compartir a través de


MINIPORT_CANCEL_DIRECT_OID_REQUEST función de devolución de llamada (ndis.h)

NDIS llama a una función de miniportador miniportCancelDirectOidRequest para cancelar una solicitud de OID directa.

Nota Debe declarar la función mediante el tipo de MINIPORT_CANCEL_DIRECT_OID_REQUEST. Para obtener más información, consulte la sección Ejemplos siguientes.
 

Sintaxis

MINIPORT_CANCEL_DIRECT_OID_REQUEST MiniportCancelDirectOidRequest;

void MiniportCancelDirectOidRequest(
  [in] NDIS_HANDLE MiniportAdapterContext,
  [in] PVOID RequestId
)
{...}

Parámetros

[in] MiniportAdapterContext

Identificador de un área de contexto que el controlador de miniporta asignó en su función MiniportInitializeEx. El controlador de miniporte usa este área de contexto para mantener la información de estado de un adaptador de miniporte.

[in] RequestId

Identificador de cancelación de la solicitud. Este identificador especifica las solicitudes OID directas que coinciden con este valor en el RequestId miembro de la estructura de NDIS_OID_REQUEST.

Valor devuelto

Ninguno

Observaciones

miniportCancelDirectOidRequest es una función opcional. Un controlador de miniporta registra esta función si controla las solicitudes de OID directas. Un controlador especifica el miniportCancelDirectOidRequest punto de entrada cuando llama a . función NdisMRegisterMiniportDriver. Un controlador de miniporte que registra el función de MiniportDirectOidRequest también debe registrar miniportCancelDirectOidRequest.

Cuando NDIS llama a MiniportCancelDirectOidRequest, el controlador de miniport debe intentar llamar a NdisMDirectOidRequestComplete función lo antes posible.

NDIS llama a miniportCancelDirectOidRequest cuando el originador de la solicitud cancela la solicitud. Para las solicitudes OID directas, NDIS no llama a miniportCancelDirectOidRequest si expira el tiempo de espera. (El tiempo de espera se especifica en el miembro Timeout de cada estructura de NDIS_OID_REQUEST).

Si el procesamiento de solicitudes sigue sin completarse en un controlador de miniport, el controlador llama al NdisMDirectOidRequestComplete función con el estado establecido en NDIS_STATUS_REQUEST_ABORTED.

Si el procesamiento de solicitudes sigue sin completarse en un controlador intermedio y la solicitud se propagó a un controlador subyacente, el controlador intermedio llama a . función NdisCancelDirectOidRequest con el parámetro OidRequest establecido en el valor que envió al controlador subyacente.

NDIS llama a miniportCancelDirectOidRequest en IRQL <= DISPATCH_LEVEL.

Ejemplos de

Para definir un función MiniportCancelDirectOidRequest, primero debe proporcionar una declaración de función que identifique el tipo de función que va a definir. Windows proporciona un conjunto de tipos de función para controladores. Declarar una función mediante los tipos de función ayuda a análisis de código para controladores, comprobador de controladores estáticos (SDV) y otras herramientas de comprobación encuentran errores y es un requisito para escribir controladores para el sistema operativo Windows.

Por ejemplo, para definir un miniportCancelDirectOidRequest función denominada "MyCancelDirectOidRequest", use el tipo MINIPORT_CANCEL_DIRECT_OID_REQUEST tal como se muestra en este ejemplo de código:

MINIPORT_CANCEL_DIRECT_OID_REQUEST MyCancelDirectOidRequest;

A continuación, implemente la función de la siguiente manera:

_Use_decl_annotations_
VOID
 MyCancelDirectOidRequest(
    NDIS_HANDLE  MiniportAdapterContext,
    PVOID  RequestId
    )
  {...}

El tipo de función MINIPORT_CANCEL_DIRECT_OID_REQUEST se define en el archivo de encabezado Ndis.h. Para identificar con más precisión los errores al ejecutar las herramientas de análisis de código, asegúrese de agregar la anotación Use_decl_annotations a la definición de función. La anotación Use_decl_annotations garantiza que se usen las anotaciones que se aplican al tipo de función MINIPORT_CANCEL_DIRECT_OID_REQUEST en el archivo de encabezado. Para obtener más información sobre los requisitos de las declaraciones de función, vea Declaración de funciones mediante el uso de tipos de roles de función para controladores NDIS.

Para obtener información sobre Use_decl_annotations, vea Anotación del comportamiento de la función.

Requisitos

Requisito Valor
cliente mínimo admitido Se admite en NDIS 6.1 y versiones posteriores.
de la plataforma de destino de Windows
encabezado de ndis.h (incluya Ndis.h)
irQL <= DISPATCH_LEVEL

Consulte también

MiniportDirectOidRequest

MiniportInitializeEx

NDIS_OID_REQUEST

NdisCancelDirectOidRequest

NdisMDirectOidRequestComplete

NdisMRegisterMiniportDriver