Моя программа обрабатывает все файлы, указанные пользователем. После предпочтительного сохранения измененного файла в каталог исходного файла. StorageFolder.GetFolderFromPathAsync
способ возвращает "Access Denied"
.
Невозможно добавить ассоциации типов файлов в манифест, потому что после обработки файлы сохраняют их расширение. И какой файл (с любым расширением) пользователь выбирает сказать невозможным. Код, в котором возникает ошибка.Сохранение файлов в приложениях Windows Store
internal async static void SetFile(List<byte> byteArray , StorageFile file)
{
try
{
string path = Path.GetDirectoryName(file.Path);
StorageFolder newFolder = await StorageFolder.GetFolderFromPathAsync(path);
StorageFile newFile = await newFolder.CreateFileAsync(string.Format(@"crt{0}", Path.GetFileName(file.Name)), CreationCollisionOption.FailIfExists);
Stream stream = await file.OpenStreamForWriteAsync();
BinaryWriter writer = new BinaryWriter(stream);
writer.Write(byteArray);
writer.Flush();
}
catch (Exception ex)
{
throw ex;
}
}
Файл StorageFile - файл, указанный пользователем. Я пытаюсь создать новую папку на основе пути исходного файла. Ошибка - «Отказано в доступе». Чтобы получить доступ к этой папке, я должен зарегистрировать расширения файлов, которые я использую. Это невозможно. Скажите, пожалуйста, можем ли мы обойти это? Или что можно сделать в моем случае?
Из того, что я понял: у вас есть файл, выполните некоторые манипуляции с ним и сохраните его в том же месте, но с небольшим изменением имени? – VasileF
Да, именно так –