IWiaDevMgr::RegisterEventCallbackCLSID 方法 (wia_xp.h)
IWiaDevMgr::RegisterEventCallbackCLSID 方法會註冊應用程式以接收事件,即使應用程式可能未執行也一樣。
語法
HRESULT RegisterEventCallbackCLSID(
[in] LONG lFlags,
[in] BSTR bstrDeviceID,
[in] const GUID *pEventGUID,
[in] const GUID *pClsID,
[in] BSTR bstrName,
[in] BSTR bstrDescription,
[in] BSTR bstrIcon
);
參數
[in] lFlags
類型: LONG
指定註冊旗標。 可以設定為下列值:
註冊旗標 | 意義 |
---|---|
WIA_REGISTER_EVENT_CALLBACK | 註冊事件。 |
WIA_UNREGISTER_EVENT_CALLBACK | 刪除事件的註冊。 |
WIA_SET_DEFAULT_HANDLER | 將應用程式設定為預設事件處理程式。 |
[in] bstrDeviceID
類型: BSTR
指定裝置識別碼。 傳遞 NULL 以在所有 WIA 裝置上註冊事件。
[in] pEventGUID
類型: const GUID*
指定應用程式註冊的事件。 如需標準事件的清單,請參閱 WIA 事件識別符。
[in] pClsID
類型: const GUID*
應用程式類別標識碼的指標 (CLSID) 。 WIA 執行時間系統會使用應用程式的 CLSID ,在註冊應用程式的事件發生時啟動應用程式。
[in] bstrName
類型: BSTR
指定註冊事件的應用程式名稱。
[in] bstrDescription
類型: BSTR
指定註冊事件之應用程式的文字描述。
[in] bstrIcon
類型: BSTR
指定要用於註冊事件之應用程式之圖示之圖像檔的名稱。
傳回值
類型: HRESULT
如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。
備註
WIA 應用程式會使用這個方法來註冊,以接收類型WIA_ACTION_EVENT的硬體裝置事件。 一旦程式呼叫 IWiaDevMgr::RegisterEventCallbackCLSID,它們就會註冊以接收 WIA 裝置事件,即使它們未執行也一樣。
事件發生時,WIA 系統會決定要註冊哪些應用程式以接收事件。 它會使用 CoCreateInstance 函式和 pClsID 參數中指定的類別識別碼來建立應用程式的實例。 然後它會呼叫應用程式的 ImageEventCallback 方法來傳輸事件資訊。
應用程式可以叫用 EnumRegisterEventInfo 方法來列舉事件註冊資訊。
應用程式可以藉由檢查事件列舉所傳回之WIA_DEV_CAP結構的ulFlags值,來尋找事件是動作類型或通知類型 (或兩者) 事件。
如果應用程式不是已註冊的元件物件模型 (COM) 元件,而且與 WIA 架構不相容,開發人員應該使用 IWiaDevMgr::RegisterEventCallbackProgram ,而不是此方法。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional、Windows XP [僅限桌面應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | wia_xp.h (包含 Wia.h) |
程式庫 | Wiaguid.lib |
Dll | Wiaservc.dll |
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應