WUDF_INTERRUPT_ENABLE回呼函式 (wudfinterrupt.h)

警告

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

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

語法

WUDF_INTERRUPT_ENABLE WudfInterruptEnable;

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

參數

[in] Interrupt

IWDFInterrupt 介面的指標。

[in] AssociatedDevice

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

傳回值

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

備註

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

每當裝置進入其運作 (D0) 狀態時,架構都會呼叫驅動程式的 OnInterruptEnable 回呼函式。 此外,驅動程式可藉由呼叫 IWDFInterrupt::Enable,讓架構呼叫 OnInterruptEnable 回呼函式。

在呼叫 OnInterruptEnable 回呼函式之前,架構會取得使用者模式中斷鎖定。

呼叫 OnInterruptEnable 回呼函式之後,架構會呼叫驅動程式的 OnD0EntryPostInterruptsEnabled 事件回呼函式。

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

範例

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

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

typedef WUDF_INTERRUPT_ENABLE *PFN_WUDF_INTERRUPT_ENABLE;

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

WUDF_INTERRUPT_ENABLE  MyInterruptEnable;

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

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

規格需求

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

另請參閱