2010-07-23 95 views
1

我已經安裝了Visual Studio 2010中與VS2010調試奇怪的問題

當未處理的異常時,沒有發生......

我創造了新的Windows窗體應用程序,並在Form_Load功能寫1線:

private void Form1_Load(object sender, EventArgs e) 
    { 
     throw new Exception(""); 
    } 

但仍然沒有發生。我唯一能看到的是在輸出窗口中出現「WindowsFormsApplication1.exe」類型的'System.Exception'的第一次機會異常。

它看起來像這個錯誤是捕獲,但我不知道如何......(這行是我寫在這個項目中的唯一線)。

我該如何解決這個問題?

謝謝!

回答

0

您也可以註冊您的程序UnhandledExceptionEvent。要做到這一點寫入以下到您的Program.cs調用Application.Run(new MyForm())前:
AppDomain.CurrentDomain.UnhandledException += OnCurrentDomainUnhandledException;

然後聲明您的活動捕手像private static void OnCurrentDomainUnhandledException(object sender, UnhandledExceptionEventArgs e)和你想與例外做什麼都。

+0

也許我沒有解釋這個問題。 我想,當有未處理的異常時,應用程序將崩潰(因爲它應該是),或者如果我在調試模式下,它會打破並顯示異常詳細信息。 現在,當拋出未處理的異常時,什麼也沒有發生...... – Mattan 2010-07-23 10:43:04

+0

然後亞當的回答應該做... – 2010-07-23 10:47:40

+0

亞當的答案指的是處理的異常。 當拋出未處理的異常時,它必須向我顯示錯誤消息。 或者.net4中的東西可以捕捉異常? – Mattan 2010-07-23 10:49:46

1

您是否指的是調試器在異常處中斷的行爲?如果是這樣,這是可配置的,默認情況下是關閉的。如果內存服務:調試 - >異常... - >公共語言運行時異常,請檢查「引發」。

+0

我知道這個地方,但這個例外沒有抓住,但任何人,所以它應該告訴我「未處理的excpetion」錯誤,而不是「第一次機會例外」。 – Mattan 2010-07-23 10:47:03