|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Батник отслеживающий и убивающий процесс |
|
CMD/BAT - [решено] Батник отслеживающий и убивающий процесс
|
Новый участник Сообщения: 22 |
Доброго времени!
Есть программа, которая через некоторое время после старта запускает дополнительный процесс который отнимает время для загрузки в программу всяких ненужностей Я хотел бы чтоб батник отследил запуск этого ненужного процесса убил бы его и закрыл бы свое окошко. Я сделал вот такой вариант, но не могу отследить точное время когда запускается процесс, если не успеваю на три секунды убить процесс то он успевает подгрузить в программу ненужные мне вещи. start "" "C:\Program Files (x86)\Matrix90\Matrix90.exe" timeout /t 30 taskkill /f /im MatrixStartup.exe Процесс начинает работать примерно с 25 по 30 секунды после старта программы Бывает и через 27 сек а бывает и ровно через 30. Вот в этом интервале я хотел бы чтоб батник искал и пытался убить бы этот процесс через каждые 0.5 секунды. |
|
Отправлено: 08:41, 26-04-2019 |
Новый участник Сообщения: 22
|
Профиль | Отправить PM | Цитировать Благодарю всех за Вашу поддержку!
Буду пользоваться VBS by Iska |
Отправлено: 09:20, 29-04-2019 | #31 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Crazy Сообщения: 1221
|
Профиль | Отправить PM | Цитировать Ну тогда ещё вариант на powershell, с возможностью слежения за несколькими процессами, с кнопкой на прекращение слежения (процесс powershell через батник запускается в скрытом режиме):
run.bat script.ps1 script.ps1
[cmdletbinding()] param( # Список на выключение можно задать в командной строке: # .\script.ps1 'notepad.exe','win32calc.exe' # или здесь: [string[]]$process = ('example1.exe','win32calc.exe') ) add-type -assembly system.windows.forms function enable-watchevent { $query = new-object system.management.wqleventquery '__instancecreationevent', ` (new-object timespan 0,0,1),'targetinstance isa "win32_process"' $processwatcher = new-object system.management.managementeventwatcher $query $action = { new-event 'powershell.processcreated' -sender $sender -eventarguments $eventargs.newevent.targetinstance } $script:name = 'watchevent' $script:id = 'powershell.processcreated' $script:job = register-objectevent -input $processwatcher -eventname ` "eventarrived" -action $action -source $name } enable-watchevent $form = new-object windows.forms.form $form.autosize = $true $form.autosizemode = [windows.forms.autosizemode]::growandshrink $form.formborderstyle = [windows.forms.formborderstyle]::fixedtoolwindow $form.controlbox = $false $form.sizegripstyle = [windows.forms.sizegripstyle]::hide $form.text = 'Продолжить слежение за процессом' + ' ' + $process + '?' $form.showintaskbar = $false $form.topmost = $true $form.startposition = 'CenterScreen' $btnyes = new-object windows.forms.button $btnyes.text = 'Да' $btnyes.location = new-object system.drawing.point(3,10) $btnyes.dialogresult = [windows.forms.dialogresult]::ok $form.controls.add($btnyes) $btnno = new-object windows.forms.button $btnno.text = 'Нет' $btnno.location = new-object system.drawing.point(110,10) $btnno.dialogresult = [windows.forms.dialogresult]::no $form.controls.add($btnno) do{ wait-event $id|out-null if($process -contains ($a = (get-event $id).sourceargs.name)){ write-host Запущен $a ps $($a -replace '\.[^\n\.]*$')|kill remove-event $id $res = $form.showdialog() } else { write-host Это не процесс из списка на выключение `((get-event $id).sourceargs.name`) remove-event $id } } while ($res -ne 'No') if(get-event $id -ea 0){remove-event $id} get-job $job.name|remove-job -force |
------- Последний раз редактировалось YuS_2, 29-04-2019 в 16:32. Отправлено: 16:24, 29-04-2019 | #32 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать YuS_2, «win32calc.exe» — это, случайно, не новое имя исполняемого файла старого доброго Калькулятора под ОС Windows 10?
|
Отправлено: 16:29, 29-04-2019 | #33 |
Crazy Сообщения: 1221
|
Профиль | Отправить PM | Цитировать Цитата Iska:
![]() |
|
------- Отправлено: 16:39, 29-04-2019 | #34 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать YuS_2, спасибо, ясно. А то я там на днях по привычке сделал Win-R, calc.exe, Enter и был неприятно удивлён результатом.
|
Отправлено: 17:16, 29-04-2019 | #35 |
Crazy Сообщения: 1221
|
Профиль | Отправить PM | Цитировать Цитата Iska:
в общем, скучать индусы не дадут. ![]() |
|
------- Отправлено: 18:35, 29-04-2019 | #36 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать YuS_2, стоп. Говоря «старый и добрый», я имел в виду обычный Калькулятор, а не его богомерзкую Modern (или как оно там нынче именуется) инкарнацию:
Скрытый текст
Получается — его больше нет? |
Отправлено: 20:28, 29-04-2019 | #37 |
Crazy Сообщения: 1221
|
Профиль | Отправить PM | Цитировать Цитата Iska:
![]() ![]() |
|
------- Отправлено: 20:50, 29-04-2019 | #38 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Хмм… Попробую завтра «пощупать».
|
Отправлено: 20:59, 29-04-2019 | #39 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - батник сообщение | kairox@vk | Скриптовые языки администрирования Windows | 7 | 14-10-2014 15:24 | |
Любой язык - [решено] батник с автозагрузкой в реестр. Чтоб при загрузке загружался батник с автозагрузкой | AndriuT | Скриптовые языки администрирования Windows | 10 | 01-08-2014 20:10 | |
VBS/WSH/JS - [решено] Открыть привод, корректно убить процесс, закрыть привод и снова убить процесс - как? | Nun-Nun | Скриптовые языки администрирования Windows | 8 | 31-10-2011 15:25 | |
CMD/BAT - Батник который закрывает процесс | nullnull_ru | Скриптовые языки администрирования Windows | 2 | 21-01-2011 05:22 | |
Вопрос - [решено] Вирус убивающий флешки.Руководство к действию. | Мартиша | Накопители (SSD, HDD, USB Flash) | 16 | 07-10-2010 19:59 |
|