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 |