簡體   English   中英

嘗試在InstalledLocation StorageFolder中創建CreateFileAsync時拒絕訪問?

[英]Access is denied when trying to CreateFileAsync in InstalledLocation StorageFolder?

嘗試在InstalledLocation StorageFolder中創建CreateFileAsync時訪問被拒絕

StorageFolder storageFolder = Windows.ApplicationModel.Package.Current.InstalledLocation;
StorageFile file = await storageFolder.CreateFileAsync("fileNmae", Windows.Storage.CreationCollisionOption.ReplaceExisting);

我也嘗試過

var storageFolder = await StorageFolder.GetFolderFromPathAsync("ms-appx:///");

並得到“值不在預期范圍內”

我可以四處走走,然后在Windows.Storage.ApplicationData.Current.LocalFolder CreateFileAsync ,然后將CopyAsync到InstalledLocation StorageFolder?

StorageFolder storageFolder = Windows.Storage.ApplicationData.Current.LocalFolder;
StorageFile file = await storageFolder.CreateFileAsync("fileName", Windows.Storage.CreationCollisionOption.ReplaceExisting);

StorageFolder installedLocationFolder = Windows.ApplicationModel.Package.Current.InstalledLocation;
var result = await file.CopyAsync(installedLocationFolder, "fileName", Windows.Storage.NameCollisionOption.ReplaceExisting);

但是InstalledLocation StorageFolder中的CreateFileAsync會拒絕訪問? 是出於安全原因還是我在此處編碼錯誤?

該應用程序的安裝目錄是只讀位置。 此外,不建議您將數據文件寫入安裝位置。 如果您需要存儲數據僅供應用程序使用,則應使用

StorageFolder localFolder = ApplicationData.Current.LocalFolder;

要么

Windows.Storage.StorageFolder temporaryFolder = ApplicationData.Current.TemporaryFolder;

取決於數據的生存期。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM