Как завершить программу, запущенную с ShellExecute

В MFC я использую этот код

ShellExecute(NULL, _T("open"), _T(EXTERNAL_APP), params,
_T(EXTERNAL_PATH), SW_HIDE);

запустить внешнюю программу, которая работает в фоновом режиме.

Однако, когда мое приложение закрывается, эта программа все еще работает, что можно проверить, просмотрев панель диспетчера задач Windows.

Итак, мой вопрос, как я могу остановить внешнюю программу, когда мое приложение останавливается ?

1

Решение

Пытаться ShellExecuteEx вместо этого, который может вернуть HANDLE hProcess недавно начавшегося процесса.

Когда / если у вас есть HANDLE hProcess тогда я ожидаю, что вы можете передать его в качестве параметра TerminateProcess функция: которую вы вызываете (чтобы завершить дочерний процесс) до остановки вашего приложения.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]