Приложение UWP падает при записи файла - PullRequest
0 голосов
/ 18 февраля 2019

Я пытаюсь записать в файл приложение UWP, работающее в Windows IoT 10 Core, но приложение неожиданно закрывается.

Код:

private async void logFile()
{
    StorageFile file = await KnownFolders.DocumentsLibrary.CreateFileAsync("robodem.log", CreationCollisionOption.OpenIfExists);
    using (Stream fileStream = await file.OpenStreamForWriteAsync())
    using (var streamWriter = new StreamWriter(fileStream))
    {
        streamWriter.Write("test");
    }
}

Я добавил разрешения для Package.appxmanifest:

<Capabilities>
    <Capability Name="internetClient" />
    <uap:Capability Name="musicLibrary" />
    <uap:Capability Name="removableStorage" />
    <uap:Capability Name="picturesLibrary" />
    <uap:Capability Name="videosLibrary" />
    <uap:Capability Name="documentsLibrary" />
    <DeviceCapability Name="webcam" />
    <DeviceCapability Name="serialcommunication">
        <Device Id="any">
            <Function Type="name:serialPort" />
        </Device>
    </DeviceCapability>
</Capabilities>

Когда я достигну кода, приложение просто закрывается и по умолчанию Hello Worldприложение отображается.

Мои вопросы:

  • Где найти журнал приложений в Windows IoT Core 10 и как его прочитать?
  • Где найти информацию о WindowsIoT -> Абстракция файловой системы UWP?
  • Где StreamWriter("log.log") создаст файл журнала?
  • В чем может быть проблема?

UPDATE

Я немного изменил код, как он предоставил здесь :

StorageFolder storageFolder = await KnownFolders.GetFolderForUserAsync(null, KnownFolderId.DocumentsLibrary);
try
{
    StorageFile file = await storageFolder.CreateFileAsync("robodem.log", CreationCollisionOption.ReplaceExisting);

    using (Stream fileStream = await file.OpenStreamForWriteAsync())
    using (var streamWriter = new StreamWriter(fileStream))
    {
        streamWriter.Write("test");
    }
}
catch (Exception ex)
{
    onMessageOccured(Severity.Error, ex.Message);
}

Я вижу ошибку:

enter image description here

ОБНОВЛЕНИЕ

Я установил тип отладчика в смешанный режим , это не помогает.

1 Ответ

0 голосов
/ 19 февраля 2019

Как правило, использование библиотеки документов не рекомендуется и не разрешается.Пожалуйста, смотрите этот блог о документах и ​​возможностях библиотеки в приложениях UWP.Лучше изменить местоположение, чтобы сохранить.Если вы по-прежнему хотите использовать DocumentsLibrary, добавьте в манифест приложения ассоциации типов файлов, в которых указаны конкретные типы файлов, к которым может обращаться ваше приложение.

enter image description here

...