Ошибка «Отказано в доступе» для Process.Start внутри библиотеки .NET Standard, на которую ссылается UWP - PullRequest
0 голосов
/ 02 июня 2019

В моем решении VS2017 я создал проекты UWP и .NET Standard Library 2.0.3.Ссылочная библиотека проекта от UWP.Библиотечный проект использует System.Diagnostics.Process для запуска процесса.В режиме отладки я получаю сообщение об отказе в доступе в строке Process.Start(...) кода внутри проекта библиотеки.

Я думал, что целью нового проекта .NET Standard Library является поддержка различных платформ (.NET, .NET Core)., UWP и т. Д.) Равномерно.Но я предполагаю, что песочница UWP-приложений, вероятно, не позволяет мне запускать Process.Start(...), хотя процесс выполняется внутри проекта библиотеки.Вопрос: Что мне может не хватать и / или как мы можем решить вышеуказанную проблему?

Ответы [ 2 ]

1 голос
/ 02 июня 2019

Вы не можете запустить процесс напрямую из UWP, но есть несколько альтернативных способов сделать это. Первый использует FullTrustProcessLauncher , если вам нужен какой-то пример, проверьте эту серию post . Другой способ - использовать приложение WPF или WinForms для размещения элементов управления UWP с Xaml Islands , где нет ограничений для вызова любых API .NET, но помните, что таким образом ваше приложение будет работать только на настольном компьютере. устройства.

0 голосов
/ 02 июня 2019

Согласно этому ответу , вы не можете использовать Process.Start в приложении UWP.Есть несколько альтернатив для запуска других приложений, но вы не можете выполнить произвольный .exe или другие процессы.

...