2016-09-20 92 views
0

我只是使用Mono.Debugger.Soft API來控制單聲道應用程序的軟調試器。 我能,我需要用下面的代碼的所有事件:Mono.Debugger.Soft - 異常處理

vm.EnableEvents(EventType.AssemblyLoad, 
    EventType.ThreadStart, 
    EventType.ThreadDeath, 
    EventType.AssemblyUnload, 
    EventType.UserBreak, 
    EventType.Exception, 
    EventType.UserLog, 
    EventType.KeepAlive, 
    EventType.TypeLoad); 

這工作相當不錯,但如果我有一個捕獲或也未捕獲的異常異常事件的上升。但不幸的是,我不知道剛剛在應用程序中出現的異常是處理還是未處理的,並且周圍的try/catch?

有誰知道我可以如何確定如果異常是未處理的?

感謝

回答

1

就找到了解決辦法,只是創建兩個不同的異常請求:

 unhandledExceptionRequest = vm.CreateExceptionRequest(null, false, true); 
     unhandledExceptionRequest.Enable(); 

     handledExceptionRequest = vm.CreateExceptionRequest(null, true, false); 
     handledExceptionRequest.Enable();