【问题标题】:Simple file reading throws error in Xamarin project简单的文件读取在 Xamarin 项目中引发错误
【发布时间】:2019-04-13 09:47:08
【问题描述】:

在这个例子中,我尝试让 C# 中最简单的文件读取工作,但它抛出了这两个错误:

System.UnauthorizedAccessException: '访问路径 'D:\test.txt' 被拒绝。'

System.Private.CoreLib.dll 中出现“System.UnauthorizedAccessException”类型的异常,但未在用户代码中处理。

我的问题是使用管理员权限运行 Visual Studio 并不能解决我的问题,那么我需要从中创建一个 Xamarin UWP 应用程序。我的另一个问题是,我将不得不执行多个任务,我遇到了同样的问题。例如,这些任务使用 POS 打印机。

当我尝试在 Xamarin 应用程序的 c# 代码中使用与 windows 窗体一起正常工作的打印机代码时,它引发了与简单文件读取相同的错误。

我已经尝试以管理员权限运行 Visual Studio,但这并没有解决我的问题。 我也试过用

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

在 app.manifest 中仍然出现同样的错误

代码:我知道这不是很多,但是在这两行之前,其他所有部分都运行良好。

public void testFunction()
{
  string tmpFile = File.ReadAllText(@"D:\test.txt");
}

我收到打印机错误的部分:

PrintExtensions.Print(BytesValue, "\\\\DESKTOP-7LVN776\\EPSON TM-T20II");

This is my project structure. You can see I wan't to use the code outside of the UWP

【问题讨论】:

    标签: c# xamarin xamarin.forms


    【解决方案1】:

    来自docs

    默认情况下,通用 Windows 平台 (UWP) 应用可以访问某些文件系统位置。应用还可以通过文件选择器或通过声明功能来访问其他位置。

    因此,UWP 应用不能任意访问系统上它没有权限的文件。如果您希望应用拥有这些额外权限,请参阅this section of the docs

    【讨论】:

      猜你喜欢
      • 2017-07-19
      • 1970-01-01
      • 1970-01-01
      • 2019-01-22
      • 2020-03-08
      • 2018-06-16
      • 2011-01-21
      • 2017-12-25
      • 1970-01-01
      相关资源
      最近更新 更多