在通用 Windows 平台 (UWP) 应用中导航文件系统访问
开发 UWP 应用程序在处理文件和目录访问时面临着独特的挑战,与其他 Windows 平台显着不同。本文详细介绍了在 UWP 环境中管理文件系统交互的限制和解决方案。
UWP 的受限文件访问模型
UWP 应用在更严格的文件访问模型下运行。 默认情况下,访问仅限于文件和目录:
FileOpenPicker
或FolderPicker
选择。FutureAccessList
或MostRecentlyUsedList
。访问应用程序存储之外的文件
要访问应用程序指定存储区域之外的文件,开发人员通常使用FolderPicker
。 然而,尝试直接路径访问(例如,StorageFolder.GetFolderFromPathAsync("D:\texts\")
)通常会导致访问被拒绝错误。 在应用程序清单中正确配置权限对于解决此问题至关重要。 以下是说明潜在问题的示例:
<code class="language-csharp">StorageFolder folder = await StorageFolder.GetFolderFromPathAsync("D:\texts\"); // Potential Access Denied QueryOptions queryOptions = new QueryOptions(CommonFileQuery.OrderBySearchRank, fileTypeFilter); queryOptions.UserSearchFilter = "142"; StorageFileQueryResult queryResult = folder.CreateFileQueryWithOptions(queryOptions); IReadOnlyList<StorageFile> files = await queryResult.GetFilesAsync();</code>
利用 FutureAccessList 和 MostRecentlyUsedList
FutureAccessList
允许持久访问文件和目录,即使在应用程序关闭后也是如此。 MostRecentlyUsedList
维护最近访问的项目的记录。
Windows 10 Build 17134 及更高版本中的增强功能
Windows 10 build 17134 引入了重大改进:
AppExecutionAlias
的应用程序可以隐式访问其当前工作目录及其子目录中的文件和文件夹。结论
成功管理 UWP 应用程序中的文件和目录访问需要仔细考虑权限以及所提供 API 的适当使用。 通过了解固有的限制并采用推荐的技术,开发人员可以创建具有流畅、安全的文件系统交互的 UWP 应用程序。
以上是UWP 应用如何访问 Windows 10 中的文件和目录?的详细内容。更多信息请关注PHP中文网其他相关文章!