【问题标题】:Creating new directory returns error :"System.UnauthorizedAccessException : 'Access to the path 'C:\Users' is denied.'创建新目录返回错误:“System.UnauthorizedAccessException:'访问路径'C:\ Users'被拒绝。'
【发布时间】:2019-11-25 15:31:58
【问题描述】:

我正在制作一个小的UWP 程序,它会有一个config.xml 文件。 我希望将其保存在“我的游戏\我的应用程序\”文件夹中。

这是我使用的代码:

string folder = "C:\\Users\\admin\\Documents\\My Games\\MyAppFolder";
Directory.CreateDirectory(folder);

运行程序时,第二行报错:

“System.UnauthorizedAccessException:'访问路径'C:\Users'被拒绝。'”。

我试过了

string folder = System.Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\My Games\\MyAppFolder"

string folder = "C:\\Users\\admin\\Documents\\MyAppFolder";

遇到了同样的问题。

但是,我尝试了 C# winforms 应用程序,我没有任何问题:在那里,相同的代码完美运行,创建了新文件夹。

感谢您的帮助!

【问题讨论】:

标签: c# uwp directory


【解决方案1】:

创建新目录返回错误:“System.UnauthorizedAccessException : 'Access to the path 'C:\Users' is denied.'

UWP运行在沙盒上,不能使用System.IOapi(Directory.CreateDirectory)直接访问文件夹路径,需要使用Windows Storageapi访问具体文件夹。要访问此类路径C:\\Users\\admin\\Documents\\MyAppFolder,您还需要添加broadFileSystemAccess 功能并在文件设置中打开此权限。更多请参考本案例reply

<Package
  ...
  xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
  IgnorableNamespaces="uap mp uap5 rescap">
...
<Capabilities>
    <rescap:Capability Name="broadFileSystemAccess" />
</Capabilities>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-02
    • 2021-06-19
    • 2015-02-28
    • 2018-07-19
    • 2020-07-02
    • 2017-01-24
    • 1970-01-01
    相关资源
    最近更新 更多