Freigeben über


WUDF_INTERRUPT_DISABLE Rückruffunktion (wudfinterrupt.h)

Warnung

UMDF 2 ist die neueste Version von UMDF und ersetzt UMDF 1. Alle neuen UMDF-Treiber sollten mit UMDF 2 geschrieben werden. Es werden keine neuen Features zu UMDF 1 hinzugefügt, und es gibt eingeschränkte Unterstützung für UMDF 1 für neuere Versionen von Windows 10. Universelle Windows-Treiber müssen UMDF 2 verwenden. Weitere Informationen finden Sie unter Erste Schritte mit UMDF-.

Die OnInterruptDisable Ereignisrückruffunktion eines Treibers deaktiviert einen angegebenen Hardwareunterbruch.

Syntax

WUDF_INTERRUPT_DISABLE WudfInterruptDisable;

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

Parameter

[in] Interrupt

Ein Zeiger auf die IWDFInterrupt Schnittstelle.

[in] AssociatedDevice

Ein Zeiger auf die IWDFDevice Schnittstelle, die der Treiber zum Aufrufen CreateInterrupt-verwendet hat.

Rückgabewert

OnInterruptDisable muss S_OK zurückgeben, wenn der Vorgang erfolgreich ist. Andernfalls sollte der Rückruf einen der Fehlercodes zurückgeben, die in Winerror.h definiert sind.

Bemerkungen

Um eine OnInterruptDisable- Rückruffunktion zu registrieren, muss der Treiber die Adresse der Rückruffunktion in einer WUDF_INTERRUPT_CONFIG Struktur platzieren, bevor IWDFDevice::CreateInterruptaufgerufen wird.

Das Framework ruft die OnInterruptDisable Rückruffunktion des Treibers bei jedem Verlassen des Arbeitszustands (D0) auf. Darüber hinaus kann ein Treiber dazu führen, dass das Framework die OnInterruptDisable- Rückruffunktion aufruft, indem IWDFInterrupt::D isableaufgerufen wird.

Vor dem Aufrufen der OnInterruptDisable- Rückruffunktion ruft das Framework die OnD0ExitPreInterruptsDisabled Ereignisrückruffunktion auf und ruft die Unterbrechungssperre für den Benutzermodus ab.

Weitere Informationen zum Behandeln von Unterbrechungen in UMDF-Treibern finden Sie unter Zugreifen auf Hardware und Behandeln von Interrupts.

Beispiele

Der Funktionstyp wird wie folgt in Wudfinterrupt.hdeklariert.

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

typedef WUDF_INTERRUPT_DISABLE *PFN_WUDF_INTERRUPT_DISABLE;

Um eine OnInterruptDisable Rückruffunktion zu definieren, die MyInterruptDisableheißt, müssen Sie zunächst eine Funktionsdeklaration bereitstellen, die SDV und andere Überprüfungstools erfordern:

WUDF_INTERRUPT_DISABLE  MyInterruptDisable;

Implementieren Sie dann die Rückruffunktion wie folgt:

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

Anforderungen

Anforderung Wert
Ende des Supports In UMDF 2.0 und höher nicht verfügbar.
Zielplattform- Desktop
Mindest-UMDF-Version 1.11
Header- wudfinterrupt.h

Siehe auch