CreateFileAsync创建阻止文件

问题描述 投票:2回答:1

我正在开发一个需要在本地存储之外创建文件的UWP应用程序。我使用文件夹选择器让用户选择输出控制器,然后我使用LocalSettings存储该选择并将文件夹添加到FutureAccessList

然后,我使用StorageFile.CreateFileAsync来创建文件(这是成功的,没有错误或例外)。

问题是,文件是使用阻塞创建的,您可以在文件属性对话框中看到:enter image description here

是否有一种特定的方法来创建没有这个的文件,或者使用C#解锁?

c# uwp windows-10-universal storagefile
1个回答
0
投票

我想在这里分享我的一些发现:

  1. 是的,我可以在测试图像时重现这一点。我认为其他文件可能会有相同的结果
  2. 根据以下SO线程:thread1thread2,该属性是在System.AppZoneIdentifier中写的,如果你从UWP应用程序检查它是一个扩展属性。(有关属性列表,你可以参考here
  3. 我用代码测试得到这个extended property IDictionary<string, object> extraProperties = await file.Properties.RetrievePropertiesAsync(propertiesName); var propValue = extraProperties[appzoneProperty]; if (propValue != null) { fileProperties.AppendLine("appzone property: " + propValue); } 我总是得到空值。根据我的理解,这可能与许可有关。
  4. 最后我想如果你需要修改这个功能,你可能不得不考虑使用desktopbridge相关技术来使用FullTrustProcessLauncher。这样,您就可以运行win32进程来修改文件的属性。
© www.soinside.com 2019 - 2024. All rights reserved.