0

我正在寻找一种在致命错误后如何关闭 WinRT 应用程序的好方法。

这应该仅在最后机会错误处理程序TaskScheduler.UnobserveTaskExcptionApp.UnhandledException中使用,我显然无法在正确的位置正确处理它。永远不应该发生,但是...

期望的行为:应用程序应显示“抱歉”消息,记录异常,用户单击“确定”按钮后,应关闭应用程序。

我搜索了解决方案,很多结果指出我不能以编程方式关闭 WinRT。例如。这里以编程方式关闭 win8 应用程序。当我调用 Exit 方法时,应用程序已关闭,但随后会引发异常,例如无法执行此操作,因为应用程序正在关闭......等等。让我有点紧张。

你会如何解决我的问题?在未处理的异常之后保持应用程序运行是没有意义的,并且通过设置 Handled = false 让它崩溃也不是好的解决方案。除此之外,UnobservedExceptions 不会触发崩溃。我听说有崩溃的应用程序将从商店中删除。

谢谢你的想法!

4

2 回答 2

2

参考 Microsoft 提供的应用程序生命周期,应用程序应在没有任何警告的情况下终止并将用户返回到开始屏幕。

http://msdn.microsoft.com/en-us/library/windows/apps/hh464925.aspx#app_crash

于 2013-08-22T10:03:18.503 回答
0

您根本不应该关闭以 Windows 运行时为目标的应用程序。内置的应用程序生命周期管理系统考虑了许多因素,包括使用情况统计信息和当前系统资源,并且几乎肯定会比您更好地决定何时关闭应用程序。

于 2013-08-13T17:39:39.257 回答