UWP Как уведомить о завершении процесса? - PullRequest
0 голосов
/ 01 октября 2018

Для UWP я ищу что-то похожее на .NET System.Diagnostics.Process возможность для уведомления о завершении процесса, например:

process.EnableRaisingEvents = true;
process.Exited += Process_Exited;

...

private static void Process_Exited(object sender, EventArgs e)
{
    var process = (Process)sender;
    // Do some stuff
}

В данный момент я могу отработать Windows.System.Diagnostics.ProcessDiagnosticInfo объекткоторые представляют собой «Процесс», который мне нужен.Проблема в том, что тип Windows.System.Diagnostics.ProcessDiagnosticInfo не предоставляет механизм (событие и т. Д.), Который мог бы сказать мне: «Эй, этот процесс завершен».

Поддерживает ли его какой-либо API UWP?

1 Ответ

0 голосов
/ 01 октября 2018

К сожалению, похоже, что для этого пока нет API UWP.ProcessDiagnosticInfo предоставляет базовую информацию о процессе, и, похоже, нет никакого способа для дальнейшего управления им (например, событиями подключения).Более того, несмотря на то, что UWP теперь поддерживает .NET Standard, классы, связанные с System.Diagnostics.Process, в основном генерируют исключение PlatformNotSupported, предположительно по соображениям безопасности.

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

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