Windows runtime 致命错误后如何关闭WinRT应用程序

Windows runtime 致命错误后如何关闭WinRT应用程序,windows-runtime,Windows Runtime,我正在寻找一种在致命错误后关闭WinRT应用程序的好方法 这应该只在最后一次机会错误处理程序TaskScheduler.UnobserveTaskException和App.UnhandledException中使用,我显然无法在正确的位置正确处理它。不应该发生,但是 期望的行为:然后应用程序应显示“抱歉”消息,记录异常,用户单击“确定”按钮后,应用程序应关闭 我搜索了解决方案,很多结果告诉我,WinRT不能以编程方式关闭。这里。 当我调用Exit方法时,应用程序被关闭,但之后会抛出异常,比如因

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

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

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

我搜索了解决方案,很多结果告诉我,WinRT不能以编程方式关闭。这里。 当我调用Exit方法时,应用程序被关闭,但之后会抛出异常,比如因为应用程序正在关闭而无法执行此操作和那个操作……等等。。让我有点紧张

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


谢谢你的想法

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

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


我知道这个问题。但是,当抛出一些致命的异常时,我应该怎么做?让应用程序在某种损坏状态下继续运行,这并不是一个好主意。。。当然,我首先尝试避免这种状态,但万一发生这种情况,为了自动化的目的,当移植测试用例到WinRT上运行时,它也会非常有帮助,以便能够在它们完成时以编程方式杀死它们。并非所有以WinRT为目标的程序都适用于生产使用。幸运的是,我们有几个选择