I 中的异常事件。后面介绍调试器中对异常的处理方法时再详细介绍; DebuggerError 事件则是在调试系统处理 Win32 调试事件发生错误时被引发; LogMessage 和 LogSwitch 事件分别用于处理内部类 System.Diagnostics.Log 的相关功能,类似于 Win32 API 下 OutputDebugString 函数的功能,等有机会再单独写篇文章介绍相关内容; ControlCTrap 事件响应用户使用 Ctrl+C 热键直接中断程序,等同于 Win32 API 下 SetConsoleCtrlHandler 函数的功能; UpdateModuleSymbols 事件在系统更新某个模块调试符号库的时候被引发,使调试器有机会同步状态。 最后还省下几个主动调试事件,在调试器调用 CLR 调试接口相关功能被完成或异常时引发: 以下为引用: interface ICorDebugManagedCallback : IUnknown { //... HRESULT Breakpoint([in] ICorDebugAppDomain *pAppDomain, [in] ICorDebugThread *pThread, [in] ICorDebugBreakpoint *pBreakpoint); HRESULT BreakpointSetError([in] ICorDebugAppDomain *pAppDomain, [in] ICorDebugThread *pThread,页码:[1] [2] [3] [4] [5] [6] [7] [8] 第6页、共8页 |