WUDF_INTERRUPT_DISABLE回呼函式 (wudfinterrupt.h)

警告

UMDF 2 是最新版的 UMDF,並取代 UMDF 1。 所有新的UMDF驅動程式都應該使用UMDF 2撰寫。 未將新功能新增至 UMDF 1,且較新版本的 #D3B27299CC58A4DDF8C41B7F6C9DEE894 上,UMDF 1 的支援有限。 通用 Windows 驅動程式必須使用 UMDF 2。 如需詳細資訊,請參閱使用UMDF使用者入門

驅動程式的 OnInterruptDisable 事件回呼函式會停用指定的硬體中斷。

語法

WUDF_INTERRUPT_DISABLE WudfInterruptDisable;

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

參數

[in] Interrupt

IWDFInterrupt 介面的指標。

[in] AssociatedDevice

驅動程式用來呼叫 CreateInterruptIWDFDevice 介面指標。

傳回值

如果作業成功,OnInterruptDisable 必須傳回S_OK。 否則,回呼應該會傳回 Winerror.h 中定義的其中一個錯誤碼。

備註

若要註冊 OnInterruptDisable 回呼函式,您的驅動程式必須在呼叫 IWDFDevice::CreateInterrupt 之前,將回呼函式的位址放在WUDF_INTERRUPT_CONFIG結構中。

每次裝置離開其運作 (D0) 狀態時,架構都會呼叫驅動程式的 OnInterruptDisable 回呼函式。 此外,驅動程式可藉由呼叫 IWDFInterrupt::D isable 來呼叫 OnInterruptDisable 回呼函式。

在呼叫 OnInterruptDisable 回呼函式之前,架構會呼叫驅動程式的 OnD0ExitPreInterruptsDisabled 事件回呼函式,並取得使用者模式中斷鎖定。

如需在 UMDF 驅動程式中處理中斷的詳細資訊,請參閱 存取硬體和處理中斷

範例

函式類型會在 Wudfinterrupt.h 中宣告,如下所示。

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

typedef WUDF_INTERRUPT_DISABLE *PFN_WUDF_INTERRUPT_DISABLE;

若要定義名為 MyInterruptDisableOnInterruptDisable 回呼函式,您必須先提供 SDV 和其他驗證工具所需的函式宣告,如下所示:

WUDF_INTERRUPT_DISABLE  MyInterruptDisable;

然後,實作回呼函式,如下所示:

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

規格需求

需求
終止支援 在 UMDF 2.0 和更新版本中無法使用。
目標平台 桌面
最低UMDF版本 1.11
標頭 wudfinterrupt.h

另請參閱