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. UMDF 1 werden keine neuen Features hinzugefügt, und die Unterstützung für UMDF 1 in neueren Versionen von Windows 10 ist eingeschränkt. 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 Hardwareunterbrechung.

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 von 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.

Hinweise

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

Das Framework ruft die OnInterruptDisable-Rückruffunktion des Treibers jedes Mal auf, wenn das Gerät seinen Arbeitszustand (D0) verlässt. Darüber hinaus kann ein Treiber dazu führen, dass das Framework die OnInterruptDisable-Rückruffunktion aufruft , indem er IWDFInterrupt::D isable aufruft.

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

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

Beispiele

Der Funktionstyp wird in Wudfinterrupt.h wie folgt deklariert.

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 mit dem Namen MyInterruptDisable zu definieren, müssen Sie zunächst eine Funktionsdeklaration bereitstellen, die SDV und andere Überprüfungstools wie folgt erfordern:

WUDF_INTERRUPT_DISABLE  MyInterruptDisable;

Implementieren Sie dann Ihre 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
UMDF-Mindestversion 1.11
Kopfzeile wudfinterrupt.h

Weitere Informationen