|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Как закрыть процесс, при условии если открыт другой? |
|
CMD/BAT - Как закрыть процесс, при условии если открыт другой?
|
Новый участник Сообщения: 5 |
Всем привет.
Подскажите как при помощи bat закрыть процесс, при условии если открыт другой? Разжую вопрос. Задача такая нужно что бы, если обнаружен процесс "notepad.exe", то завершить процесс "mspaint.exe",если нет такого процесса, то повторить данную команду -N количество раз. Ну и если возможно, то по завершинии процесса "mspaint" закрыть батник. P.S. Извеняюсь если этот вопрос где то разбирался. поиск результатов не дал. Зарание спасибо! |
|
Отправлено: 02:10, 17-01-2013 |
Старожил Сообщения: 263
|
Профиль | Отправить PM | Цитировать |
Отправлено: 06:24, 17-01-2013 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать Спасибо за поддержку. работает.
Еще вопроси как сделать так что бы запустилась сначала команда @echo off set process1=notepad.exe set process2=mspaint.exe :st tasklist /FI "ImageName EQ %process1%" | find /I "%process1%" If %errorlevel% NEQ 0 goto :st taskkill /f /im %process2% и что бы она висела в ожидании. ждала запуска "notepad" и при этом запустился к примеру "%programfiles%\winrar\winrar.exe" |
Отправлено: 05:24, 18-01-2013 | #3 |
Старожил Сообщения: 263
|
Профиль | Отправить PM | Цитировать |
Отправлено: 06:08, 18-01-2013 | #4 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать Спасибо. за ответы и за помощь.но возникла некая проблема. опишу суть правды что требуется.
команды работаю отлично, но проблемка вот в чем. нужно смотреть за процессом Firefox.exe, если он запущен то выключать другой процесс. к этому вопросов нет. Решено. но вот проблема в другом. Если переименовать файл в %programfile% скажем firefox.exe на firefox1.exe, то уже команда не работает, а пользователь может ее переименовать как хочет.Возможно ли как то сделать так что бы данная комадна закрывала второй процесс, не зависимо от названия этого Firefox-a ( при любом его названии?) |
|
Отправлено: 19:02, 18-01-2013 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать KOS9I4OK, пожалуйста, ещё раз, с расстановкой и по-русски.
|
Отправлено: 03:57, 19-01-2013 | #6 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать Хорошо. Вот что у меня сделанно
@echo off title star game @echo created by KOS9I4OK rem CenterSelf set FGcol=1100 rem ChangeColor %FGcol% 0 rem PrintBoxAt 12 31 3 20 2 rem ChangeColor 0 %FGcol% rem Wait 1500 rem ShadeBoxAt 13 32 1 2 2 rem Wait 1000 rem ShadeBoxAt 13 34 1 2 2 rem Wait 1000 rem ShadeBoxAt 13 36 1 2 2 rem Wait 1000 rem ShadeBoxAt 13 38 1 2 2 rem Wait 1000 rem ShadeBoxAt 13 40 1 2 2 rem Wait 1000 rem ShadeBoxAt 13 42 1 2 2 rem Wait 1000 rem ShadeBoxAt 13 44 1 2 2 rem Wait 1000 rem ShadeBoxAt 13 46 1 2 2 rem Wait 1000 rem ShadeBoxAt 13 48 1 2 2 rem ClearColor rem Locate 25 1 set process1=firefox.exe set process2=arma2OA.exe set process3="Expansion\beta\arma2oa.exe" -beta=Expansion\beta;Expansion\beta\Expansion -nosplash -mod=@DayZ -connect=213.128.хх.хх -port=2302 -password=123456 start "" %process3% :st tasklist /FI "ImageName EQ %process1%" | find /I "%process1%" If %errorlevel% NEQ 0 goto :st taskkill /f /im %process2% exit Это все я запаковываю .exe файл и передаю игроку(клиенту). Далее этот файл запускает игру. В игре как и в других есть возможность использовать читы. Так вот чит включается по средством включенного браузера Firefox.exe. При данном коде работает все как надо. Если во время игры включили браузер, то закрылась игра. Но если переименовать файл запуска браузера к примеру c firefox.exe в firefox123.exe, браузер запустится с именем процесса firefox123.exe и данный код не сработает. Вот сам теперь вопрос. Возможно ли закрыть данный браузер (не зависимо от его названия) или вообще все браузеры на компьюторе? |
Отправлено: 11:31, 19-01-2013 | #7 |
Старожил Сообщения: 415
|
Профиль | Отправить PM | Цитировать KOS9I4OK, для оформления примеров кода используется bb-код code.
Насчёт закрытия окон браузера вне зависимости от имени процесса - можно использовать класс окна. Для этого нужна консольная версия утилиты NirCmd. @Echo Off :: Убиваем ie nircmdc win close class "IEFrame" :: Убиваем оперу nircmdc win close class "OperaWindowClass" :: Убиваем хром nircmdc win close class "Chrome_WidgetWin_0" :: Убиваем огнелис nircmdc win close class "MozillaWindowClass" Замечу, что принудительно закрывать пользователю браузер - плохое решение. У него там может быть открыта нужная информация. Стоит хотя бы предупреждение перед закрытием выдавать. А от читеров батник не спасёт - ведь отредактировать его проще простого. |
Последний раз редактировалось Anonymоus, 19-01-2013 в 17:20. Отправлено: 17:09, 19-01-2013 | #8 |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать Цитата Anonymоus:
|
|
Отправлено: 17:38, 19-01-2013 | #9 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
VBS/WSH/JS - [решено] Открыть привод, корректно убить процесс, закрыть привод и снова убить процесс - как? | Nun-Nun | Скриптовые языки администрирования Windows | 8 | 31-10-2011 15:25 | |
Теория - [решено] Определить открыт ли файл, и если да то каким процессом... | RUVATA | Программирование и базы данных | 8 | 10-02-2011 05:35 | |
.NET - Как определить что файл уже открыт, и если да, то кем? | RUVATA | Программирование и базы данных | 0 | 14-01-2011 11:10 | |
VBS/WSH/JS - Убить процесс, если окно активно | rsod | Скриптовые языки администрирования Windows | 5 | 28-05-2010 15:59 | |
Доступ - как мне для студента закрыть доступ на другой локальный диск, закрыть доступ к реестр | nisan | Microsoft Windows 2000/XP | 10 | 12-09-2009 21:14 |
|