Compartir a través de


WUDF_INTERRUPT_DISABLE función de devolución de llamada (wudfinterrupt.h)

Advertencia

UMDF 2 es la versión más reciente de UMDF y sustituye a UMDF 1. Todos los controladores UMDF nuevos deben escribirse con UMDF 2. No se agregan nuevas características a UMDF 1 y hay compatibilidad limitada con UMDF 1 en versiones más recientes de Windows 10. Los controladores universales de Windows deben usar UMDF 2. Para obtener más información, consulta Introducción con UMDF.

La función de devolución de llamada de eventos OnInterruptDisable de un controlador deshabilita una interrupción de hardware especificada.

Sintaxis

WUDF_INTERRUPT_DISABLE WudfInterruptDisable;

HRESULT WudfInterruptDisable(
  [in] IWDFInterrupt *Interrupt,
  [in] IWDFDevice *AssociatedDevice
)
{...}

Parámetros

[in] Interrupt

Puntero a la interfaz IWDFInterrupt .

[in] AssociatedDevice

Puntero a la interfaz IWDFDevice que el controlador usó para llamar a CreateInterrupt.

Valor devuelto

OnInterruptDisable debe devolver S_OK si la operación se realiza correctamente. De lo contrario, la devolución de llamada debe devolver uno de los códigos de error definidos en Winerror.h.

Comentarios

Para registrar una función de devolución de llamada OnInterruptDisable , el controlador debe colocar la dirección de la función de devolución de llamada en una estructura de WUDF_INTERRUPT_CONFIG antes de llamar a IWDFDevice::CreateInterrupt.

El marco llama a la función de devolución de llamada OnInterruptDisable del controlador cada vez que el dispositivo deja su estado de funcionamiento (D0). Además, un controlador puede hacer que el marco llame a la función de devolución de llamada OnInterruptDisable llamando a IWDFInterrupt::D isable.

Antes de llamar a la función de devolución de llamada OnInterruptDisable , el marco llama a la función de devolución de llamada de evento OnD0ExitPreInterruptsDisabled del controlador y adquiere el bloqueo de interrupción en modo de usuario.

Para obtener más información sobre el control de interrupciones en los controladores UMDF, consulte Acceso a hardware y control de interrupciones.

Ejemplos

El tipo de función se declara en Wudfinterrupt.h, como se indica a continuación.

typedef
__drv_functionClass(WUDF_INTERRUPT_DISABLE)
HRESULT
WUDF_INTERRUPT_DISABLE(
    _In_
    IWDFInterrupt* Interrupt,
    _In_
    IWDFDevice* AssociatedDevice
    );

typedef WUDF_INTERRUPT_DISABLE *PFN_WUDF_INTERRUPT_DISABLE;

Para definir una función de devolución de llamada OnInterruptDisable denominada MyInterruptDisable, primero debe proporcionar una declaración de función que requieren SDV y otras herramientas de comprobación, como se indica a continuación:

WUDF_INTERRUPT_DISABLE  MyInterruptDisable;

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

HRESULT
  MyInterruptDisable (
    IN IWDFInterrupt* pInterrupt,
    IN IWDFDevice*  pAssociatedDevice
    )
  {…}

Requisitos

Requisito Value
Finalización del soporte técnico No disponible en UMDF 2.0 y versiones posteriores.
Plataforma de destino Escritorio
Versión mínima de UMDF 1.11
Encabezado wudfinterrupt.h

Consulte también