使用 FileOpenPicker 打开本地数据路径

Open local data path with FileOpenPicker

/Data/myFiles/

我想在我的 Hololens 应用程序中打开上面的数据路径,它位于我的应用程序文件夹 (HoloApp/Data/myFiles) 的本地。据我了解,这样做的主要方式是使用 FileOpenPickers。我仔细阅读了 API's 并试图获得最基本的、精简的、简单的 FOP,我可以使它工作。

FileOpenPicker openPicker = new FileOpenPicker();
openPicker.ViewMode = PickerViewMode.Thumbnail;

Task task = new Task(
async () =>
{
    StorageFile file = await openPicker.PickSingleFileAsync();
    if (file != null)
    {
        // Application now has read/write access to the picked file
        Debug.Log("Picked file: " + file.Name);
    }
    else
    {
        Debug.Log("Cancelled");
    }
});

task.Start();
task.Wait();

我已经为此苦苦挣扎了一个多星期,但一点运气都没有(我很抱歉在 UWP 应用程序开发方面表现不佳。)非常感谢任何建议、链接和鼓励

这是最新的 return:

抛出异常:mscorlib.ni.dll

中的 'System.Exception'

程序“[4084] hololensapplication.exe”已退出,代码为 -1073741189 (0xc000027b)。

Microsoft Dev Center 对此错误代码也没有多大帮助。

编辑:

private async void OpenPdfButton_Click()
{
    FileOpenPicker openPicker = new FileOpenPicker();
    openPicker.FileTypeFilter.Add(".pdf");
    StorageFile file = await openPicker.PickSingleFileAsync();
}

崩溃

抛出异常:mscorlib.ni.dll

中的 'System.Exception'

程序“[4268] hololensapplication.exe”已退出,代码为 -1073741189 (0xc000027b)。

你不能

根据 the current limitations of the HoloLens shell,您不能使用内置的本机文件选择器(因为它不存在)。

File Explorer and Local File System

The Windows Holographic app model does not currently expose the concept of a file system. There are known folders, but there is no built in, local File Explorer app like on Windows Desktop or Mobile. Apps can save files to their local state folders. Apps can also save files to a registered File Picker app like OneDrive.

您可以使用第三方文件选择器(如提到的 OneDrive),但那将是一个单独的 DLL,而不是 Windows.Storage