Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/251: Рейтинг темы: голосов - 251, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 29.10.2012
Сообщений: 3

Автоматический запуск приложения после его закрытия

30.10.2012, 02:29. Показов 53179. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть приложение, которое должно работать 24/7. Необходимо написать Bat-ник, который бы запускал это приложение автоматически после его закрытия. Помогите, пожалуйста.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
30.10.2012, 02:29
Ответы с готовыми решениями:

Автоматический запуск приложения после его закрытия со счётчиком перезапусков
Где то натыкался на такую возможность: автоматический запуск приложения (в виндовс) после его закрытия и сохранение количества...

Запуск N-ного батника после закрытия приложения
Привет форумчанам! Требуется реализовать в bat-файле такое: 1. Запуск приложения (.\Game.exe) 2. Запуск bat-файла...

Переименование файла, запуск приложения и обратное переименование после закрытия приложения
Есть файл который нужно переименовать с последующим запуском приложения от имени администратора, а после завершения приложения обратное...

19
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
30.10.2012, 02:43
Лучший ответ Сообщение было отмечено ComSpec как решение

Решение

Bash
1
2
3
4
5
6
7
@echo off
set fullname=c:\utils\proga.exe
set prog=proga.exe
:waiting
tasklist |>nul FindStr /B /L /I /C:%prog%&&(ping -n 1 -w 1000 192.168.254.254>NUL & goto :waiting)
start "" "%fullname%"
goto :waiting
1
0 / 0 / 0
Регистрация: 29.10.2012
Сообщений: 3
30.10.2012, 06:38  [ТС]
Можете объяснить какая команда за что отвечает ? то я не селен в этом деле
0
Клюг
 Аватар для Charles Kludge
7677 / 3192 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
30.10.2012, 11:56
Цитата Сообщение от kossmos
Можете объяснить какая команда за что отвечает ?
Ищем приложение в списке задач
Цитата Сообщение от Dragokas
tasklist |>nul FindStr /B /L /I /C:%prog%
И, если нашли, ждем 1 сек.(ping и т.д. - просто задержка), и крутимся в цикле.
Цитата Сообщение от Dragokas
&&(ping -n 1 -w 1000 192.168.254.254>NUL & goto :waiting)
А если приложения нет, то запускаем:
Цитата Сообщение от Dragokas
start "" "%fullname%"
Dragokas, а почему пингуем локалку 192.168 а не loopback? Могут же быть и 10.x и 172.16-172.31... Или, чур меня, чур, 169.254
1
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
30.10.2012, 12:31
Цитата Сообщение от Charles Kludge Посмотреть сообщение
почему пингуем локалку 192.168 а не loopback?
Bash
1
ping -n 1 -w 1000 192.168.254.254>NUL
Смысл в том, чтобы пинг не прошел.
192.168.254.254 - это заведомо не существующий IP-адрес.
Он то, конечно, может реально существовать в локалке, но с очень низкой вероятностью кто-нибудь себе поставит подсеть 254.

Можно и себя. Но там 1-й пакет тогда приходит сразу без учета паузы. Поэтому нужно еще единичку прибавлять к кол-ву запросов.
Bash
1
ping 127.0.0.1 -n 2 -w 1000
2
0 / 0 / 0
Регистрация: 29.10.2012
Сообщений: 3
30.10.2012, 13:03  [ТС]
Цитата Сообщение от Dragokas Посмотреть сообщение
Вроде работает все как надо, но может быть что то еще нужно дописать?
сейчас опишу процесс что должен делать bat-ник,то есть я запускаю первый .exe он запускает второй .exe и процесс,мне нужно чтоб проверяло работает процесс или нет, если нет то запускает первый .exe
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
30.10.2012, 14:52
Пишите в строку № 2 путь к первой программе.
А в строке № 3 название второй программы (откройте диспетчер задач Ctrl+Shift+Esc - там увидите точное имя)
0
NLAndy
24.02.2013, 21:27
У меня батник запускает нужный файл и закрывается, не остается висеть проверяя его состояние. windows 7.
Попробовал в этом случае запускать из первого второй батник тот в свою очередь снова запускает первый, параллельно проверяя состояние, но теперь командная строка выдает: "waiting" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. Не удается найти указанную метку пакетного файла - waiting

В чем может быть дело?
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
25.02.2013, 00:18
Лучший ответ Сообщение было отмечено ComSpec как решение

Решение

Возможно, Вы допустили ошибку № 4 Наиболее частые ошибки.

Также прилагаю другой вариант паузы:
Bash
1
2
3
4
5
6
7
8
@echo off
set fullname=c:\windows\system32\calc.exe
set prog=calc.exe
 
:begin
tasklist /fi "IMAGENAME eq %prog%"|>nul find "%prog%"||start "" "%fullname%"
>nul ping 127.1 -n 6
goto :begin
Указанный в посте № 2 может вызывать зависания на некоторых серверных системах.
1
 Аватар для Badger
95 / 95 / 4
Регистрация: 25.06.2012
Сообщений: 278
25.02.2013, 01:13
Цитата Сообщение от NLAndy Посмотреть сообщение
"waiting" не является внутренней или внешней командой
Опечатка в 4й строке второго поста: двоеточие стоит не в начале, а в конце. Из-за этого ошибка.
1
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
25.02.2013, 01:58
Badger, спасибо. Исправил.

Непривычка после Visual Basic - там наоборот.
0
8 / 3 / 0
Регистрация: 05.02.2014
Сообщений: 42
01.04.2015, 10:42
Неофициальное продолжение (темы)...
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
01.04.2015, 11:07
Или так: Делаем паузу в командном файле стандартными средствами Windows
0
0 / 0 / 0
Регистрация: 21.08.2017
Сообщений: 3
21.08.2017, 14:55
Доброго времени суток! Подскажите если используем код из 2-го поста.
Кликните здесь для просмотра всего текста

Bash
1
2
3
4
5
6
7
@echo off
set fullname=c:\utils\proga.exe
set prog=proga.exe
:waiting
tasklist |>nul FindStr /B /L /I /C:%prog%&&(ping -n 1 -w 1000 192.168.254.254>NUL & goto :waiting)
start "" "%fullname%"
goto :waiting

Можно ли как то задать время опроса проверки? Что бы не каждую секунду было.

И еще вопрос, при возникновении ошибки и вывода окна - Приложение будет закрыто (Отправить отчет или Не отправить отчет) поможет ли батник?
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
21.08.2017, 15:16
Цитата Сообщение от akadeface Посмотреть сообщение
Можно ли как то задать время опроса проверки? Что бы не каждую секунду было.
увеличьте параметр -w 1000

Можно вообще без опроса:
Windows Batch file
1
2
3
:begin
start /w "" "c:\utils\proga.exe"
goto begin
Может прокатить, может, нет. Зависит от конкретной программы.

Цитата Сообщение от akadeface Посмотреть сообщение
Приложение будет закрыто (Отправить отчет или Не отправить отчет)
Чьё приложение?
Цитата Сообщение от akadeface Посмотреть сообщение
поможет ли батник?
смотря помощь в чём нужна.
0
0 / 0 / 0
Регистрация: 21.08.2017
Сообщений: 3
21.08.2017, 18:59
Имеется OPC сервер и с непонятной переодичностью выскакивает ошибка с окном отправить и не отправить отчет, хочу что бы сам перезапускался
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
21.08.2017, 23:15
Цитата Сообщение от akadeface Посмотреть сообщение
и с непонятной переодичностью выскакивает ошибка с окном отправить и не отправить отчет
Обратитесь к разработчику этой программы.
0
0 / 0 / 0
Регистрация: 21.08.2017
Сообщений: 3
22.08.2017, 18:47
Не все так просто
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
22.08.2017, 18:49
Попытка не пытка.
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
22.08.2017, 21:29
Цитата Сообщение от akadeface Посмотреть сообщение
выскакивает ошибка с окном отправить и не отправить отчет
Так это часом не обычное ли сообщение windows о крахе программы и предложении отправить отчет в microsoft (показали бы скриншот что ли)?
Если приложение фатально умирает, причем так что windows заботливо перехватывает его крах, но вы хотите чтобы оно умирало молча, то остается только отключить сообщения (и отчеты) о таких ошибках в windows. Или попросить разработчика исправить глюк программы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.08.2017, 21:29
Помогаю со студенческими работами здесь

Автоматический запуск приложения со съемного носителя
Вот появился такой вопрос: как запустить приложение со съемного носителя? autorun.inf крутил, но на ХР удалось только метку тома...

Запуск приложения и его удаление
Необходимо написать батник в 2 строки: запуск определенного приложения по заданному пути и удаление самого батника. С удалением вроде всё в...

Запуск reg-файла после проверки времени его создания
Фуромчане, помогите Попробовал разбраться сам, потрател день, но так и не получилось Задача такая Есть два фордера на сервре...

Автоматический запуск команд в консоли
Есть консольная программа, adb.exe. Чтобы ее запустить, я вынужден каждый раз переходить в папку с программой, запускать из этой папки...

Автоматический запуск приложения после компиляции
где то есть такая опция - компелируешь dll и после компеляции студия должна запустить прилодение, где эта настройка????


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru