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

Батник на выключение батника при определенных программах

04.04.2022, 02:40. Показов 2617. Ответов 25

Студворк — интернет-сервис помощи студентам
Доброго времени, Господа. Есть проблема, не хватает серого вещества у меня на ее решение.

В общем, есть батник запускаемый под вин10 через планировщик задач при запуске компа, задача состоит в том, чтобы написать батник, который вырубал бы его при включении определенных программ из списка.

Как я себе это представляю, оба батника запускаются через планировщик, один рабочий самый первый, второй просто постоянно находится в фоне и ничего не делает, в нем внутри и находится список программ-триггеров, второй батник вырубает полностью первый, и вот как это реализовать я придумать не могу.

Добавлено через 4 часа 53 минуты
На данный момент я додумал только вот такое. Но что-то я не правильно сделал... При включенном браузере например или стиме, пейнт не закрывается

Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@Echo
SetLocal EnableExtensions
:KOK
Set ProcessName1=steam.exe
Set ProcessName2=chrome.exe
Set ProcessName3=wgc.exe
Set ProcessName4=gamecenter.exe
 
TaskList /FI "ImageName EQ %ProcessName1%" | Find /I "steam.exe"
TaskList /FI "ImageName EQ %ProcessName2%" | Find /I "chrome.exe"
TaskList /FI "ImageName EQ %ProcessName3%" | Find /I "wgc.exe"
TaskList /FI "ImageName EQ %ProcessName4%" | Find /I "gamecenter.exe"
 
If %ErrorLevel% EQU 1 goto KOK
If %ErrorLevel% EQU 1 taskkill /IM mspaint.exe /F
pause
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.04.2022, 02:40
Ответы с готовыми решениями:

Не запускается батник при запуске с другого батника?
Такая проблема....запуская батник сам....всё идеально работает и показывает(скрин с цифрой 1) Когда запускаю этот батник, с помощью...

Не нулевой exit code при завершении работы батника который запускает другой батник
Здравствуйте, просьба помочь разобраться в проблеме. Есть система управления и мониторинга файлами,в которой есть возможность создавать...

Выключение при определенных нажатиях клавиатуры запущенного приложения
Выключает при определенных нажатиях клавиатуры запущенное приложение, которое потребляет большое количество памяти. Например, запустил...

25
0 / 0 / 0
Регистрация: 03.04.2022
Сообщений: 7
07.04.2022, 03:12  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от FlasherX Посмотреть сообщение
поэтому далеко не все эти вещи в админских разделах жалуют
Об этом и думал да)
Цитата Сообщение от FlasherX Посмотреть сообщение
Только неясно, почему start.exe?
Это для примера вводил название) Сам он обычно так и подписан как mine или eth) Домашние знают, что если такой процесс есть, то выключать его не нужно ни при каких случаях, дети только могут тыкнуть по ошибке)

Добавлено через 13 минут
Цитата Сообщение от FlasherX Посмотреть сообщение
поэтому далеко не все эти вещи в админских разделах жалуют
Об этом и думал да)
Цитата Сообщение от FlasherX Посмотреть сообщение
Только неясно, почему start.exe?
Это для примера вводил название) Сам он обычно так и подписан как mine или eth) Домашние знают, что если такой процесс есть, то выключать его не нужно ни при каких случаях, дети только могут тыкнуть по ошибке)
0
07.04.2022, 10:40

Не по теме:

Kochan29k, понятно. Направление дано, думайте.

0
0 / 0 / 0
Регистрация: 03.04.2022
Сообщений: 7
12.04.2022, 16:51  [ТС]
Что ж, всем огромное спасибо! С помощью небольших костылей и еще пару дней порывшись на форуме я нашел более менее удобное и простое понятное решение своей проблемы! Код у меня получилось написать в батнике вот в таком виде.
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
@echo off
:1
tasklist | find "steam.exe"
IF %ERRORLEVEL% neq 0 goto 2
If %ERRORLEVEL% neq 1 taskkill /IM mspaint.exe /F
:2
tasklist | find "GameCenter.exe"
IF %ERRORLEVEL% neq 0 goto 3
If %ERRORLEVEL% neq 1 taskkill /IM mspaint.exe /F
:3
tasklist | find "wgc.exe"
IF %ERRORLEVEL% neq 0 goto 4
If %ERRORLEVEL% neq 1 taskkill /IM mspaint.exe /F
:4
tasklist | find "chrome.exe"
IF %ERRORLEVEL% neq 0 goto 1
If %ERRORLEVEL% neq 1 taskkill /IM mspaint.exe /F
goto 1
0
7690 / 2887 / 1110
Регистрация: 06.06.2017
Сообщений: 9,822
12.04.2022, 18:01
Kochan29k, вместо отлова события бесконечно (да ещё и без паузы) дёргать в цикле три утилиты — это ужасное решение.
И тут слишком много лишнего. Тогда уж так:
Windows Batch file
1
2
3
@setlocal enabledelayedexpansion
@for %%p in (steam GameCenter wgc chrome) do @set "filt=!filt! /fi "imagename eq %%p.exe""
@for /l %%. in (0) do @(tasklist /nh!filt!|>nul find /c /v "") &&2>nul taskkill /f /im mspaint.exe
Хотя это всё равно ужасно...
0
 Аватар для Angry Old Man
3601 / 754 / 317
Регистрация: 26.03.2022
Сообщений: 1,416
Записей в блоге: 1
12.04.2022, 20:45
Kochan29k, Давайте включим логику: Вы собираетесь убить задачу, например, mspaint.exe, при наличии другой задачи из набора. А если mspaint.exe не запущена, зачем грузить машину опросом набора задач?
И, хоть бы опрос делать через некоторую паузу, уж очень CMD грузит процессор.
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
@Echo Off
    Set PgmMain="steam.exe" "GameCenter.exe" "wgc.exe" "chrome.exe"
    Set "PgmKill=mspaint.exe"
:Begin
    TaskList /Fi "ImageName EQ "%PgmKill%""|>nul Find /I "%PgmKill%" && 
        For %%p In (%PgmMain%) Do (
            TaskList /Fi "ImageName EQ %%~p"|>nul Find /I "%%~p" &&(>nul TaskKill /F /IM "%PgmKill%" &GoTo :Begin)
    ))
    >nul TimeOut /T 10
GoTo :Begin
Exit /B
Лучше VBS.
0
7690 / 2887 / 1110
Регистрация: 06.06.2017
Сообщений: 9,822
12.04.2022, 21:40
Цитата Сообщение от Angry Old Man Посмотреть сообщение
А если mspaint.exe не запущена, зачем грузить машину опросом набора задач?
Тут согласен. Только опрашивать в цикле каждую тоже неправильно. Чуток поправлю свой код:
Windows Batch file
1
2
3
@setlocal enabledelayedexpansion&set p=mspaint.exe
@for %%p in (steam GameCenter wgc chrome) do @set "filt=!filt! /fi "imagename eq %%p.exe""
@for /l %%. in (0) do @(>nul 2>&1 qprocess !p!&&(tasklist /nh!filt!|>nul find/c ".")&&>nul taskkill/f /im !p!)&>nul timeout 2
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.04.2022, 21:40

Создать батник для запуска другого батника
Здравствуйте, помогите решить проблему Нужно создать bat для запуcка другого bat в автоматическом режиме после его закрытия ...

Выключение/включение Wi-Fi в D-Link DIR-300 по запуску батника
Знаю, что можно через telnet управлять роутером, но: 1) необходимо каждый раз вводить логин и пароль; 2) при вызове help выводятся не...

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

Некорректная работа батника для мониторинга существования определённых процессов
Приветствую. Есть задача запускать два процесса так, чтобы они не работали одновременно. Вот батник: :proverka tasklist | findstr...

Как из батника запустить cmd.exe от имени администратора с выполнением определённых команд?
Добрый день! Помогите, пожалуйста, решить следующую задачу: Регистрирую dll-библиотеки с помощью батника. Для того, чтобы они...


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

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru