尝试从DLL中的UWP打开文件时发生访问冲突异常

问题描述 投票:-1回答:1

我的文件保存在

path=System.IO.Path.Combine(Application.persistentDataPath, filename);

((文件保存在AppData / App / LocalState中,该文件存在)

我将路径作为Intptr:

Intptr pointer=Marshal.StringToHGlobalAnsi(path);

如果尝试在dll中打开文件,则会出现访问冲突异常。

我创建的Intptr错误吗?还是只能使用Windows.Data.Storage而不使用常见的System.IO.File方法访问UWP数据?

c# uwp dllimport
1个回答
0
投票

[通常,UWP应用只能访问某些默认位置,例如AppData / App / LocalState。还有一些库,例如音乐库(如果您添加了此功能)。

但是存在受限功能-broadFileSystemAccess,它可以允许UWP应用访问用户有权访问的所有文件。

有关有关UWP的文件权限的更多信息,请参阅以下文档:

https://docs.microsoft.com/en-us/windows/uwp/files/file-access-permissions

https://docs.microsoft.com/en-us/windows/uwp/packaging/app-capability-declarations#restricted-capabilities

© www.soinside.com 2019 - 2024. All rights reserved.