c# - WinRT 为什么我会收到 UnauthorizedAccessException?

标签 c# asynchronous windows-store-apps

我看到 UnauthorizedAccessException 异常尤其是在打开文件并且不处理它们时发生,但就我而言,情况有所不同。 我有一个非常简单的代码,并且我认为该代码是正确的。 我正在显示一个消息对话框,它工作正常,但可能会出现 UnauthorizedAccessException,我将解释如何进行。 我的消息对话框采用“搜索” super 按钮方法,该方法在 bing map 中搜索地址,如果未找到该地址,则会显示该对话框。 这就是代码(不需要整个代码,它不会产生影响):

MessageDialog msg = new MessageDialog("No results found.");
await msg.ShowAsync();

如果我调用一次,一切正常,但如果我执行下一步,我会得到 UnauthorizedAccessException:

  1. 打开搜索 super 按钮。
  2. 搜索不存在的地址(例如:sadasdasdasd)。

  3. 现在将显示带有取消按钮的消息对话框。 现在我不按取消,我只需再次按搜索(具有相同的值)。

  4. 现在我在到达此行时遇到异常:

    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/

相关文章:

javascript - 循环遍历包含 itemId 的数组,从每个 itemid 的 api 获取数据

c# - ScrollViewer.ChangeView 什么时候失败?

c# - 如何在 Windows 8 应用程序中使用 c# 添加 facebook rss 提要?

c# - 自定义控件 BorderThickness

c# - EntityFramework 代码首先是 : Set order of fields

c# - C# 中的神秘行

c++ - Windows 10 标题栏不工作

c# - WPF 中的绑定(bind)字典

javascript - Reactjs 与 Parse.com 异步加载错误?无法访问对象

javascript - Node.js - 为什么我的一些回调没有异步执行?