Запуск приложения с помощью Process.Start не отображается в диспетчере задач, пока основное приложение не завершится - PullRequest
0 голосов
/ 02 января 2019

Я запускаю небольшое приложение из основного приложения, используя process.start. Вот резюме моего кода: (Я удалил всю проверку на ошибки только для ясности ...)

        Dim proc as New Process

        Dim si As New ProcessStartInfo

        si.FileName = "SourceMonitor.exe"

        si.Arguments = "guid=" & GUID & " name=" & Name & " timeout=0"

        si.UseShellExecute = True

        si.CreateNoWindow = True

        Proc.StartInfo = si

        Proc.EnableRaisingEvents = True

        AddHandler Proc.Exited, AddressOf procExitEventHandler

        Proc.Start()

Что происходит, так это то, что новое приложение SourceMonitor не будет отображаться в диспетчере задач - но я этого хочу. Однако , он Отображается , как только программа, запустившая его (с помощью process.start), закрывается. Это кажется странным для меня! Я попытался установить для UseShellExecute значение False и даже попробовал другой подход, используя si (мой ProcessStartInfo) для

WindowStyle = ProcessWindowStyle.Hidden
si.UseShellExecute = False 'this is required when using processWindowStyle.hidden

В каждом случае приложение не отображается в диспетчере задач, пока основная программа не завершится. Кто-нибудь знает, как убедиться, что мое приложение отображается в диспетчере задач? Это помогает, когда мне нужно диагностировать проблему клиента - потому что мне нужно проверить, работает ли SourceMonitor.

1 Ответ

0 голосов
/ 02 января 2019

Хорошо - нашел "проблему" - и это было довольно очевидно ... Второй процесс принадлежит первому.Он не отображается в списке как самостоятельный процесс, скорее он отображается как дочерний элемент основного процесса.Диспетчер задач имеет стрелку раскрывающегося списка в главном приложении.

v  MainApplication
   - SourceMonitor

Нажатие на раскрывающееся меню показывает, что SourceMonitor обстрелян.Если я остановлю основное приложение, SourceMonitor станет независимым приложением, а затем появится в обычном списке.Это на самом деле работает лучше, чем я надеялся.

...