将文件保存在任意文件夹uwp

Saving file in arbitrary folder uwp

我正在编写 UWP 应用程序(C# 和 C++/CX)。 我的应用程序让用户有机会保存一些连接的摄像机录制的视频。 我为此使用 OpenCV VideoWriter,因为我必须将视频效果添加到 C# SoftwareBitmap(来自 MediaFrameReader)。

这就是我在 C++/CX 代码中创建 VideoWriter 的方式:

videoWriter.open(
    pathToCreatedFile, // Works with "videos", but not with "desktop" or other
    encodingProperties.codec,
    encodingProperties.fps,
    cv::Size{ (int)frameSize.Width, (int)frameSize.Height }
);

如果我选择默认 Windows“视频”库进行保存,一切都很好,但是当我尝试使用“桌面”文件夹或任何其他特定位置时,我的输出 .mp4 文件为 0KB . 是否可以将文件保存在 UWP 的随机目录中,我该如何访问它?

P.S。我的最小版本是 11 月更新。

根据设计,您无权从 UWP 访问任意文件夹。您可以轻松地通过声明的功能请求特定的媒体库:documentsLibrarydocumentsLibrarypicturesLibrary、and/or picturesLibrary.

没有直接访问桌面的选项。

broadFileSystemAccess 功能允许这样做,但这是一项受限功能,这意味着很难将其发布到 Windows 商店(如果这是您的计划)。

参见 Microsoft Docs