脱机启动时Silverlight OOB应用程序未捕获异常

脱机启动时Silverlight OOB应用程序未捕获异常,silverlight,offline,silverlight-oob,Silverlight,Offline,Silverlight Oob,我有一个Silverlight 5应用程序,可以在浏览器内和浏览器外工作。当浏览器用完时,它应该能够使用以前下载的数据(XMLs和JPGs)在没有互联网连接的情况下工作 目前它可以正常工作,但我在启动过程中遇到了一个未处理的异常(被我的应用程序的未处理异常事件处理程序捕获),它向用户显示了一条可怕的消息,比如“内部错误-应用程序现在可能崩溃”。可选的详细信息是“E_意外”。错误发生在我的开发机器和其他机器上,包括使用MacOS X的客户端 当然,我可以改变信息,但这不是重点 所以我的问题是:只有

我有一个Silverlight 5应用程序,可以在浏览器内和浏览器外工作。当浏览器用完时,它应该能够使用以前下载的数据(XMLs和JPGs)在没有互联网连接的情况下工作

目前它可以正常工作,但我在启动过程中遇到了一个未处理的异常(被我的应用程序的未处理异常事件处理程序捕获),它向用户显示了一条可怕的消息,比如“内部错误-应用程序现在可能崩溃”。可选的详细信息是“E_意外”。错误发生在我的开发机器和其他机器上,包括使用MacOS X的客户端

当然,我可以改变信息,但这不是重点

所以我的问题是:只有在脱机启动时,什么才可能导致错误?当未处理的异常处理程序捕获到错误时,该错误似乎不会影响应用程序的稳定性?

我发现了罪魁祸首(通过记录启动步骤):这是对更新的检查

如果在没有可用连接时调用
Application.CheckAndDownloadUpdateAsync()
,则会出现此异常。如果在启动更新检查之前检查连接是否可用(*),则异常将消失

这没有在中记录,因此它看起来像Silverlight运行时中的一个bug

(*)主要基于
NetworkInterface.GetIsNetworkAvailable()
,以及一些自定义检查