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 |