【发布时间】:2020-12-05 13:56:19
【问题描述】:
我需要能够从 UWP 应用程序中的路径访问文件。
文件首先由用户使用 OpenFilePicker 选择。然后我需要将此文件传递给 FFmpeg 包装器,该包装器从文件路径设置其输入。目前,对于应用程序本地存储之外的任何文件(如预期的那样),我都会收到拒绝访问错误。
FileOpenPicker filePicker = new FileOpenPicker();
filePicker.ViewMode = PickerViewMode.Thumbnail;
filePicker.FileTypeFilter.Add("*");
var file = await filePicker.PickSingleFileAsync();
FFMpegArguments
.FromInputFiles(file.Path.ToString())
当通过路径字符串 (file.Path.ToString()) 而不是存储文件实例访问该文件时,有没有办法保留应用程序对该文件的权限?一直在研究 FutureAccessList ,但这似乎只是稍后提供另一个存储文件实例,而不是允许路径访问同一文件。我不想启用广泛的文件系统访问,因为我只需要访问用户已经选择的单个文件。
谢谢!
【问题讨论】:
-
FFMpegArguments.FromInputFiles是否收到StorageFile? -
不幸的是它没有。这是一个 .net 包装器,我将它硬塞到 UWP 应用程序中。有一个选项可以接收流,但无法使其正常工作。包装器是 github.com/rosenbjerg/FFMpegCore 如果知道有用的话。
标签: c# ffmpeg uwp permissions storagefile