Перейти к содержанию

Батником дождаться запуск процесса и убить его. [Решено]


Рекомендуемые сообщения

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

Напр.:

Запускаем 1.exe, затем появляется 2.tmp, далее вызывается 3.exe через N секунд и вываливается окно, которое нужно исключить.

Нужен бат-файл, который может:

1. После запуска 1.exe мониторить процессы, циклично, каждую секунду или быстрее, возможно какими нибудь сторонними консольными утилитами.

2. Как только появляется процесс 3.exe, убить его или предварительно запретить его запуск. При этом процессы 1.exe и 2.tmp будут завершены автоматически, как только остановить 3.exe.

Требуется именно батник. Сгодится любой готовый пример.

Спасибо за ответ.

Ссылка на комментарий

Батником примерно так, но сильно грузит ЦПУ:


set process=3.exe
echo Waiting for %process%
:findproc
tasklist | FIND "%process%" > nul
if ERRORLEVEL 1 goto findproc else goto exit

:exit
echo Process %process% was terminated
pause>nul
@echo off

Можно средствами AutoIt:



While (1)
ProcessWait('3.exe')
ProcessClose('3.exe')
WEnd
#NoTrayIcon

Скомпиленный экзешник

Ссылка на комментарий

D_Master

Батник справляется со своей задачей хорошо, ждет и прихлопывает программу, та даже мелькнуть не успевает. Это радует!

Спасибо огромное!

Ссылка на комментарий

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...