删除后如何删除/移动存储文件?

时间:2017-09-28 06:44:39

标签: c# uwp

当我通过filepicker获取文件对象时,我能够成功删除/移动/复制存储文件。但是,当用户将文件从Windows文件浏览器中删除到我的应用程序时,我无法删除/移动这些文件(但它允许我复制)。我的代码是......

if (e.DataView.Contains(StandardDataFormats.StorageItems) == false) { return; }                          
var files = await e.DataView.GetStorageItemsAsync();
if (files.Count < 0) { return; }

foreach (var file in files) 
{
 await file.DeleteAsync(StorageDeleteOption.PermanentDelete);
 //await file.MoveAsync(folder, Filename, NameCollisionOption.GenerateUniqueName);
}

当我尝试删除/移动时,我收到以下错误。 &#34; WinRT信息:此文件仅限读取访问权限,不得修改或删除&#34;。但该文件不是只读的。它允许我通过文件选择器添加相同的文件!

1 个答案:

答案 0 :(得分:1)

它的设计。删除文件时无法删除文件。 UWP应用只能直接访问自己的文件。

Picker完全不同于&#34;拖放&#34;操作。

  

选择器以用户的完全权限运行,并且可以代表应用程序使用这些权限,用于应用程序通过功能请求的位置,用户通过文件选择器请求的位置等.StorageItem封装此经纪程序,以便应用程序不需要直接处理它。来自Rob的blog