首页 > 解决方案 > UWP 桌面桥:如何在应用程序的卸载更新之前提示用户将其数据保存在他选择的文件夹中?

问题描述

我打算使用桌面桥开发一个应用程序。数据将保存在包含 SQLite 数据库和子文件夹中的其他文档的文件夹中。

我假设数据只能保存在文件权限受限的 UWP 应用程序沙箱中

由于数据对用户很有价值,我需要找到一种简单的方法,在卸载或更新之前,提示他使用选择器将数据文件夹和子文件夹保存在他任意选择的位置。

1.用户只需一个动作即可选择所需的位置文件夹,然后软件复制所选用户文件夹中的数据文件夹子文件夹,该文件夹可能为空,或者它将覆盖现有的先前备份而不会发出警告。

(不像这样复杂所以回答MostRecentlyUsedList。我也不知道是否可以跟踪一个空文件夹)

2.如何在卸载或更新前提示用户(为了保存最新的备份,(可能在另一个位置,他想要什么)。

这是我构建应用程序时遇到的更大问题。

标签: uwpwin-universal-appdesktop-bridge

解决方案


你的第一个假设是不正确的。作为桌面桥应用程序,您可以保存当前用户具有写入权限的文件系统上的任何位置。它与常规 Win32/Winforms/WPF 应用程序相同。唯一的区别是对全局 AppData 文件夹的写入被重定向到特定于应用程序的 AppData 文件夹。另请注意,您不能写入自己的安装文件夹。

请参阅本段:
https ://docs.microsoft.com/en-us/windows/uwp/porting/desktop-to-uwp-behind-the-scenes#file-system

"对不属于包的文件和文件夹的写入会被网桥忽略,只要用户有权限就允许。 "


推荐阅读