2016-12-01 55 views
0

我最近建立了一個應用程序,運行在少數客戶端機器上。應用程序作爲窗口啓動運行。在這個應用程序中,我通過使用以下方法訪問它來修改應用程序運行時的一些key參數。 ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None)捕獲應用程序的exe配置文件錯誤

偶爾(不知道爲什麼?),配置文件被損壞,並在系統重新啓動應用程序崩潰與下面的消息

application failed to start because its side-by-side configuration is incorrect

我想趕上這個例外。我曾嘗試將try-catch塊放在main()的應用方法中,但仍然沒有處理異常和那些奇怪的消息框來了。

我該如何處理corrupted config file

+0

如果是windows服務,應該有OnStart()方法。 – MikkaRin

+0

損壞的配置文件是什麼樣的? – rene

+0

它實際上不是一個窗口服務,而是從窗口啓動。 –

回答

0

嘗試在程序啓動時向您的appDomain註冊全局異常處理程序,例如在你的App.xaml:

var currentDomain = AppDomain.CurrentDomain; 
currentDomain.UnhandledException += GlobalUnhandledExceptionHandler; 

在GlobalUnhandledExceptionHandler事件處理程序可以記錄錯誤或顯示一個消息到配置文件損壞用戶。

這不會阻止您的應用程序關閉,但至少您知道的不僅僅是「並行配置已損壞」。