Compartir a través de


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

NDIS puede llamar al controlador MiniportEnableInterruptEx del controlador de miniporte para habilitar interrupciones con fines de diagnóstico y solución de problemas.

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

Sintaxis

MINIPORT_ENABLE_INTERRUPT MiniportEnableInterrupt;

void MiniportEnableInterrupt(
  [in] NDIS_HANDLE MiniportInterruptContext
)
{...}

Parámetros

[in] MiniportInterruptContext

Identificador de un bloque de información de contexto. El controlador de minipuerto proporcionó este controlador en el parámetro MiniportInterruptContext que el controlador de miniporte pasó al Función NdisMRegisterInterruptEx .

Valor devuelto

None

Observaciones

Un controlador de minipuerto debe proporcionar un controlador MiniportEnableInterruptEx si el controlador llama a la función NdisMRegisterInterruptEx para registrar una interrupción.

Los controladores miniport deben deshabilitar y habilitar interrupciones, como se explica en las páginas de referencia de MiniportInterrupt y MiniportInterruptDpc .

NDIS llama a MiniportEnableInterruptEx y Funciones MiniportDisableInterruptEx para habilitar y deshabilitar interrupciones con fines de diagnóstico y solución de problemas. Normalmente, MiniportEnableInterruptEx y MiniportDisableInterruptEx acceden a los recursos del controlador de miniporte compartidos por la función MiniportInterrupt . Por lo tanto, NDIS llama a estos controladores en DIRQL.

Ejemplos

Para definir una función MiniportEnableInterruptEx , primero debe proporcionar una declaración de función que identifique el tipo de función que está definiendo. 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 MiniportEnableInterruptEx denominada "MyEnableInterruptEx", use el tipo MINIPORT_ENABLE_INTERRUPT como se muestra en este ejemplo de código:

MINIPORT_ENABLE_INTERRUPT MyEnableInterruptEx;

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

_Use_decl_annotations_
VOID
 MyEnableInterruptEx(
    NDIS_HANDLE  MiniportInterruptContext
    )
  {...}

El tipo de función MINIPORT_ENABLE_INTERRUPT 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_ENABLE_INTERRUPT en el archivo de encabezado. Para obtener más información sobre los requisitos de las declaraciones de función, vea Declarar funciones mediante 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 Compatible con NDIS 6.0 y versiones posteriores.
Plataforma de destino Windows
Encabezado ndis.h (incluya Ndis.h)
IRQL Consulte la sección Comentarios.

Consulte también

MiniportDisableInterruptEx

MiniportInterrupt

MiniportInterruptDPC

NDIS_MINIPORT_INTERRUPT_CHARACTERISTICS

NdisMRegisterInterruptEx