1

Тема: AHK: функця ControlSend

Здравствуйте! Прошу вашей помощи, запутался с синтаксисом этой функции, она то не работает у меня, то непонятно-что вообще делает.
Мне нужно послать в неактивное окно нажатие кнопки (button) в нём (кстати, как указать её номер? как его определить?), причём подобных окон много (экземпляры одной программы), и мне нужно заранее как-то указать скрипту, какому из них посылать нажатия. Вот тут  совсем не разобрался, как указать необходимое окно:
1) Как получить его дескриптор программно (например, выбираю нужное мне окно и в нём жму ctrl+alt+y, скрипт запоминает дескриптор активного окна.
2) Куда потом его вставлять (в функции ControlSend)?
Пожалуйста, помогите решить задачу! Буду очень благодарен за пример.

2 (изменено: Alectric, 2013-11-11 19:01:29)

Re: AHK: функця ControlSend

^!vk59::   ;  ctrl+alt+Y
winget,winid,id,A   ; Получаем id активного окна
msgbox,Идентификатор окна: %winid%
return

Из справки:

ControlSend, Control, Keys, WinTitle

WinTitle - Чтобы использовать идентификатор окна, задайте параметр как ahk_id %ПеременнаяСодержащаяID%.

Чтобы определить имя контрола используйте AU3_Spy - программа входит в комплект AutoHotKey.
В ней будет указан "ClassNN" контрола под курсором.

Win 10 x64
AHK
                       Справка AHK v1 тебе в помощь.