1

Тема: AHK: Task killer

Помогите собрать простой скрипт. Я нуб в этой теме.  Задача такая: если процесс активен, нужно его закрыть. У меня есть батник который завершает процесс и вызывается горячей клавишей Ctrl+Alt+S. В целом код ниже работает.

IfWinActive ahk_exe process.exe
Send, ^!s

Но как бы я не пытался я не понимаю, как сделать так, чтобы он сам мониторил хаотичный запуск этого процесса, и применял команду Send. Я пытался использовать параметр Sleep с ожиданием в 10 секунд и кучу повторений строк кода, но жизнь этого скрипта почему то длилась не долго, хотя по моим расчетам он должен был работать 8 часов, каждые 10 секунд проверяя активно ли окно. Понятно что я все делаю неправильно, помогите с задачей)

2

Re: AHK: Task killer

#Persistent
SetTimer, Timer, 10000
Return

Timer:
	Process, Close, process.exe
	Return
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3

Re: AHK: Task killer

teadrinker

Огромное спасибо! Работает)) Если вам не сложно, можете построчно прокомментировать? Вроде всего 6 строк. Если я правильно понял, то:


#Persistent - имя проги?
SetTimer, Timer, 10000 - задать таймер, имя таймера, время работы
Return - конец ввода переменной "таймер"

Timer: - установки таймера
	Process, Close, process.exe - начало работы, закрыть указанный процесс?
	Return - конец установки таймера?

Благодаря чему он не выходит из цикла?))

4

Re: AHK: Task killer

ialwaysnear пишет:

Благодаря чему он не выходит из цикла?

Тут цикла нет, здесь таймер. Код простой, в комментариях не нуждается. Смотрите описание команд в мануале, есть частичный перевод.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

5

Re: AHK: Task killer

teadrinker Спасибо!))

6 (изменено: ialwaysnear, 2016-06-15 14:17:13)

Re: AHK: Task killer

teadrinker
Подскажите а как сделать обращение не к процессу а к диалоговому окну в данном случае? Тут еще такая тонкость используется ahk_class #32770 (окно которое открывается при нажатии "Сохранить как") но оно должно закрываться, к примеру, только в программе notepad.

В данном случае закрываются все окна ahk_class #32770

#Persistent
SetTimer, Timer, 1000
Return

Timer:
	WinClose, ahk_class #32770
	Return

Может нужно что-то вроде

WinClose, ahk_class #32770, notepad

или вроде того?

7

Re: AHK: Task killer

WinClose,Сохранение ahk_class #32770 ahk_exe notepad.exe

8

Re: AHK: Task killer

yalanne Спасибо! Работает )))