共用方式為


IActionOnCLREvent::OnEvent 方法

在事件上執行回呼,可藉由呼叫 ICLROnEventManager::RegisterActionOnEvent 方法註冊這些事件。

HRESULT OnEvent (
    [in] EClrEvent event,
    [in] PVOID     data
);

參數

  • event
    [in] 其中一個 EClrEvent 值,表示事件的類型。

  • data
    [in] 物件的指標,物件中包含與 event 有關的詳細資料。

傳回值

HRESULT

描述

S_OK

OnEvent 已成功傳回。

HOST_E_CLRNOTAVAILABLE

Common Language Runtime (CLR) 尚未載入至處理序中,或者此 CLR 目前的狀態無法執行 Managed 程式碼或成功處理呼叫。

HOST_E_TIMEOUT

呼叫已逾時。

HOST_E_NOT_OWNER

呼叫端不具備鎖定功能。

HOST_E_ABANDONED

已封鎖執行緒或 Fiber 在等候事件時,該事件已遭取消。

E_FAIL

發生未知的重大錯誤。 如果方法傳回 E_FAIL,處理序中就無法再使用 CLR。 對任何裝載方法的後續呼叫會傳回 HOST_E_CLRNOTAVAILABLE。

備註

data 參數為未指定型別的物件之指標。 如果 event 參數為 Event_DomainUnload,則 data 為卸載之 AppDomain 的數值識別碼。 主應用程式可以採取適當的動作,將此識別項當做機碼使用。

如果 event 為 Event_MDAFired,則 data 為 MDAInfo 執行個體 (Instance) 的指標,這個執行個體包含 Managed 偵錯助理 (MDA) 的訊息輸出。 MDA 為 CLR 的功能,可協助開發人員進行偵錯,方式是為以其他方法很難截獲的此類事件產生相關的 XML 訊息。 這類訊息在偵錯 Managed 和 Unmanaged 程式碼之間的轉換時會特別有用。 如需詳細資訊,請參閱診斷 Managed 偵錯助理的錯誤

需求

**平台:**請參閱 .NET Framework 系統需求

**標頭:**MSCorEE.h

程式庫:包含做為 MSCorEE.dll 中的資源

**.NET Framework 版本:**4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0

請參閱

參考

EClrEvent 列舉

IActionOnCLREvent 介面

ICLRControl 介面

ICLROnEventManager 介面

MDAInfo 結構

概念

診斷 Managed 偵錯助理的錯誤