Compartir a través de


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

NDIS llama a la función MiniportCancelOidRequest de un controlador de miniporte para cancelar una solicitud de OID.

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

Sintaxis

MINIPORT_CANCEL_OID_REQUEST MiniportCancelOidRequest;

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

Parámetros

[in] MiniportAdapterContext

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

[in] RequestId

Identificador de cancelación de la solicitud. Este identificador especifica las estructuras NDIS_OID_REQUEST que se van a cancelar.

Valor devuelto

None

Observaciones

Un controlador especifica el punto de entrada MiniportCancelOidRequest cuando llama al Función NdisMRegisterMiniportDriver .

Cuando NDIS llama a MiniportCancelOidRequest, el controlador de miniporte debe intentar llamar a la función NdisMOidRequestComplete lo antes posible.

Los parámetros de solicitud se definen en la estructura NDIS_OID_REQUEST en OidRequest .

NDIS llama a MiniportCancelOidRequest cuando el originador de la solicitud cancela la solicitud o cuando expira el tiempo de espera especificado en el miembro Timeout .

Si el procesamiento de solicitudes sigue sin completarse en un controlador de minipuerto, el controlador llama a la función NdisMOidRequestComplete 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 la función NdisCancelOidRequest con el parámetro OidRequest establecido en el valor que envió al controlador subyacente.

NDIS llama a MiniportCancelOidRequest en IRQL <= DISPATCH_LEVEL.

Ejemplos

Para definir una función MiniportCancelOidRequest , 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 Code Analysis for Drivers, Static Driver Verifier (SDV) y otras herramientas de comprobación a encontrar errores y es un requisito para escribir controladores para el sistema operativo Windows.

Por ejemplo, para definir una función MiniportCancelOidRequest denominada "MyCancelOidRequest", use el tipo de MINIPORT_CANCEL_OID_REQUEST como se muestra en este ejemplo de código:

MINIPORT_CANCEL_DIRECT_OID_REQUEST MyCancelOidRequest;

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

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

El tipo de función MINIPORT_CANCEL_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_OID_REQUEST del archivo de encabezado. Para obtener más información sobre los requisitos de las declaraciones de función, consulte 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, consulte Anotación del comportamiento de la función.

Requisitos

Requisito Value
Cliente mínimo compatible Se admite en NDIS 6.0 y versiones posteriores.
Plataforma de destino Windows
Encabezado ndis.h (incluya Ndis.h)
IRQL <= DISPATCH_LEVEL

Consulte también

MiniportInitializeEx

NDIS_OID_REQUEST

NdisCancelOidRequest

NdisMOidRequestComplete

NdisMRegisterMiniportDriver