Я открываю файл через:
await Windows.System.Launcher.LaunchFileAsync(storageFile, options);
Документация для LaunchFileAsync гласит:
Когда запуск завершается неудачно по любой из вышеперечисленных причин, API завершается успешно
и возвращает FALSE из своей асинхронной операции. Поскольку он не имеет
возможность запроса, применяются ли вышеуказанные ограничения к текущему
запуск вызывающего приложения не должен предполагать, что запуск прошел успешно,
и должен обеспечить запасной механизм на случай, если он потерпит неудачу. Возможно
Решение было бы попросить пользователя сохранить файл и направить пользователя
чтобы открыть его на рабочем столе .
Какой самый простой способ сделать это?
Я пытался:
var picker = new FolderPicker();
var pfolder = await picker.PickSingleFolderAsync();
StorageApplicationPermissions.FutureAccessList.Add(pfolder);
var folder = await StorageFolder.GetFolderFromPathAsync(pfolder.Path);
var file = await folder.CreateFileAsync(storageFile.Name);
using (var writer = await file.OpenStreamForWriteAsync())
{
await writer.WriteAsync(storageFile,0,0);
}
Но, к сожалению, writer.WriteAsync
занимает всего Bytes[]
, а не StorageFile
. Как мне сохранить мой StorageFile?