如果我的應用程序以我無法處理的異常結束,我希望它向用戶顯示錯誤消息並退出。問題在於用戶會看到一個異常對話框,其中包含Details,Continue和Quit選項,如果用戶單擊Continue,則應用程序將保持在我不想要的「某些」狀態。應用程序不會死於未處理的異常?
複製這種與我剛剛創建了一個Windows窗體應用程序,添加一個按鈕的代碼量最少,而且按鈕的點擊代碼只是寫道:
throw new ApplicationException("I must crash now!!!");
當開始從調試編譯EXE文件夾,Release文件夾或從Release文件夾中啓動exe文件(在pdb文件導致問題的情況下),然後單擊按鈕我顯示Details/Continue/Quit對話框,如果我說繼續應用程序保持生命我如何防止繼續選項出現?
我在我的電腦上(Vista,Visual Studio 2008,Visual Studio 2010,使用VS2010創建測試應用程序)以及用戶計算機(Windows 7)上都有這種行爲。
如果我將它設置爲UnhandledExceptionMode.ThrowException,那麼看起來像Windows窗體是「處理未處理的異常」。繼續作爲.Net中未處理異常的默認選項的基本原理是什麼? – user755327
@ user755327:Windows窗體的設計人員可能更好地回答有關基本原理的問題,但帶有「繼續」和「退出」按鈕的對話框始終在Windows窗體中。這是一個Windows窗體特定功能,而不是.NET功能。 –