C# 尝试在InstalledLocation StorageFolder中创建FileAsync时拒绝访问?
尝试在InstalledLocation StorageFolder中创建FileAsync时,我获得的访问被拒绝C# 尝试在InstalledLocation StorageFolder中创建FileAsync时拒绝访问?,c#,file-io,windows-8,microsoft-metro,C#,File Io,Windows 8,Microsoft Metro,尝试在InstalledLocation StorageFolder中创建FileAsync时,我获得的访问被拒绝 StorageFolder storageFolder = Windows.ApplicationModel.Package.Current.InstalledLocation; StorageFile file = await storageFolder.CreateFileAsync("fileNmae", Windows.Storage.CreationCollisionOp
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
,然后copyanc
到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;