2016-12-01 59 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事件处理程序可以记录错误或显示一个消息到配置文件损坏用户。

这不会阻止您的应用程序关闭,但至少您知道的不仅仅是“并行配置已损坏”。