我看到 UnauthorizedAccessException
异常尤其是在打开文件并且不处理它们时发生,但就我而言,情况有所不同。
我有一个非常简单的代码,并且我认为该代码是正确的。
我正在显示一个消息对话框,它工作正常,但可能会出现 UnauthorizedAccessException
,我将解释如何进行。
我的消息对话框采用“搜索” super 按钮方法,该方法在 bing map 中搜索地址,如果未找到该地址,则会显示该对话框。
这就是代码(不需要整个代码,它不会产生影响):
MessageDialog msg = new MessageDialog("No results found.");
await msg.ShowAsync();
如果我调用一次,一切正常,但如果我执行下一步,我会得到 UnauthorizedAccessException:
- 打开搜索 super 按钮。
搜索不存在的地址(例如:sadasdasdasd)。
现在将显示带有取消按钮的消息对话框。 现在我不按取消,我只需再次按搜索(具有相同的值)。
现在我在到达此行时遇到异常:
await msg.ShowAsync();
System.UnauthorizedAccessException:访问被拒绝。 (HRESULT 异常:0x80070005 (E_ACCESSDENIED))
我做错了什么吗?我该如何处理?
我只是希望我的应用程序能够抵抗崩溃。
最佳答案
当你打电话时
await msg.ShowAsync();
您的应用程序正在等待,直到消息框关闭。 因此,我认为您只能同时打开一个 MessageBox。
另请参阅这篇文章: WinRT C# MessageDialog.ShowAsync - Unauthorized Access Exception -
关于c# - WinRT 为什么我会收到 UnauthorizedAccessException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18686925/