[решено] как убить процесс через autoit

Аватара пользователя
rocet

[решено] как убить процесс через autoit

Сообщение rocet »

будет ли работать данный скрипт?



Код:

Код: Выделить всё

RunWait ('Yandex.exe /SILENT') ;ключ рабочий можно пользоваться
ProcessWait ("browser.exe")
ProcessClose ("browser.exe")

сперва идёт установкка яндекс браузера, потом через какое-то время (не сразу) запускается 5 процессов browser.exe (короче откроется яндекс браузер Изображение )

P.S. к заголовку окна не привяжешь он зависит от веб-страницы которая открыта в программе
Аватара пользователя
Iska

Re: [решено] как убить процесс через autoit

Сообщение Iska »

rocet, это и есть google, точнее самый обычный
Chromium
с «блэкджеком и шлюхами» от Яндекса (
Яндекс.Браузер — Википедия
).




Цитата rocet:



после установки (не сразу) запускается как в гугле около 5 процессов browser.exe
[решено] как убить процесс через autoit




Процесс «yandex.exe» при этом остаётся в памяти или закрывается?
Аватара пользователя
Iska

Re: [решено] как убить процесс через autoit

Сообщение Iska »

Цитата Iska:

Процесс «yandex.exe» при этом остаётся в памяти или закрывается?
[решено] как убить процесс через autoit


открывается домашняя страница, и процессы никуда не исчезают( если закрыть окно то исчезают)
Аватара пользователя
rocet

Re: [решено] как убить процесс через autoit

Сообщение rocet »

Цитата rocet:



открывается домашняя страница, и процессы никуда не исчезают( если закрыть окно то исчезают)
[решено] как убить процесс через autoit




Повторяю вопрос:


Цитата Iska:



Процесс «yandex.exe» при этом остаётся в памяти или закрывается?
[решено] как убить процесс через autoit
Аватара пользователя
rocet

Re: [решено] как убить процесс через autoit

Сообщение rocet »

Цитата Iska:



Повторяю вопрос:
[решено] как убить процесс через autoit




что-то я заглючил yandex.exe висит до конца установки потом вырубается

а уж потом
Цитата rocet:



через какое-то время (не сразу)
[решено] как убить процесс через autoit




уже открывается окно
Аватара пользователя
rocet

Re: [решено] как убить процесс через autoit

Сообщение rocet »

Хреново. В противном случае было бы проще. А так надо ставить эту заразу и отслеживать в какой момент происходит запуск этих процессов — самим «yandex.exe» или опосредованно, либо же вовсе отложенный запуск, каким именно образом сие происходит — запускается один процесс «browser.exe», который запускает остальные «browser.exe», или же все они запускаются одновременно.




Цитата rocet:



P.S. к заголовку окна не привяжешь он зависит от веб-страницы которая открыта в программе
[решено] как убить процесс через autoit




Привязывайтесь к имени/пути процесса. По имени определите PID'ы. По PID'ам определите хэндлы окна/окон. Всем окнам посылаете посылаете событие WM_CLOSE. Либо же, если не заработает такое «мягкое» закрытие — тупо снимайте процесса по ProcessClose. Главная проблема — как отследить момент завершения появления всех процессов «browser.exe».
Аватара пользователя
Iska

Re: [решено] как убить процесс через autoit

Сообщение Iska »

Можно попробовать запустить Yandex.exe функцией run, потом в цикле, пока работает процесс Yandex.exe, периодически отслеживать и убивать все его дочерние процессы или не все, а только с определенным именем, не знаю, (функция _WinAPI_EnumChildProcess() из
Расширение стандартной AutoIt библиотеки WinAPI.au3
).
Аватара пользователя
madmasles

Re: [решено] как убить процесс через autoit

Сообщение madmasles »

Iska, вот еще кое-что. При отключении одного процеса browser.exe в диспечере задач, вырубаются все (пробовал наугад любой)

processwait для ожидания появления browser.exe не подойдет, или как-то подругому?
Аватара пользователя
rocet

Re: [решено] как убить процесс через autoit

Сообщение rocet »

Iska, вот еще кое-что. При отключении одного процеса browser.exe в диспечере задач, вырубаются все (пробовал наугад любой)

processwait для ожидания появления browser.exe не подойдет, или как-то подругому?
Аватара пользователя
rocet

Re: [решено] как убить процесс через autoit

Сообщение rocet »

Подойдёт. Как писал выше коллега madmasles, «Run("Yandex.exe ")», затем «ProcessWait("browser.exe")» и «ProcessClose("browser.exe")».
Ответить

Вернуться в «AutoIt»