Приложение UWP RequestRestartAsync создает исключение в System.Private.Corelib - PullRequest
0 голосов
/ 24 мая 2018

Мой компьютер работает под управлением Windows 10, сборка 16299, которая является минимально необходимой версией для функции перезапуска UWP в CoreApplication.RequestRestartAsync(...).Однако после того, как я перезвоню с аргументами string.Empty, приложение закрывается, и через несколько секунд выдается исключение из System.Private.CoreLib.dll:

Exception occurred: System.Exception: Exception from HRESULT: 0x80040900
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()

Я могу получить этоинформация из блока Try / Catch, и я запускаю приложение из Visual Studio 2017 в режиме отладки.Прежде чем я попытался его поймать, появилось диалоговое окно с указанием отладки в другом экземпляре Visual Studio.Когда загружался другой экземпляр, это было запрещено, поскольку в нем говорилось, что отладчик уже подключен.

Кроме того, я попытался перехватить его, включив «Обязательные исключения времени выполнения языка», но он не перехватил это исключение.

Почему это происходит?Когда я использую это на другой машине с Windows 10, перезагрузка работает нормально.Могу ли я отладить или получить дополнительную информацию об Исключении в System.Private.CoreLib?

1 Ответ

0 голосов
/ 24 мая 2018

Эта ошибка не повлияет на реальную работу вашего приложения при установке приложения и его запуске без подключения Visual Studio для отладки.Visual Studio не позволяет Windows приостановить работу приложения, подключенного к отладчику.Это позволяет пользователю просматривать пользовательский интерфейс отладки Visual Studio во время работы приложения.Когда вы отлаживаете этот код в Visual Studio, вы видите, что приложение все еще Работает на вашем устройстве Диспетчер задач => Подробно вкладка после вызова этого метода, поэтому приложение не может быть перезапущено, поскольку до Windows 10 версии 1803 одновременно мог работать только один экземпляр приложения UWP.Подробнее о UWP с несколькими экземплярами см. Создание универсального приложения Windows для нескольких экземпляров .

Но в моем тесте на устройстве ОС версии 1803 ОС, сборка 17134 и Visual Studio версии 15.7,он отключит отладчик Visual Studio автоматически после вызова CoreApplication.RequestRestartAsync(string.Empty) кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...