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

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


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

Опубликовано

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

Напр.:

Запускаем 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

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

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

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

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

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