Send
Эмулирует нажатие клавиш в активном окне.
Send ( "keys" [, flag = 0 ] )
Параметры
| keys | Последовательность нажимаемых клавиш. |
| flag |
[необязательный] Изменяет интерпретацию параметра keys: 0 - (по умолчанию), текст содержит специальные символы, такие как + и !, указывающие на нажатия Shift и Alt. 1 - клавиши как есть (спец-символы {}^+! как обычный текст). |
Примечания
AutoIt может эмулировать нажатия всех символов ASCII и дополнительных ASCII символов (0-255), чтобы отправить символы UNICODE вы должны использовать опцию "ASC" и код символа, который нужно эмулировать (см. {ASC nnnn} в таблице ниже).| Команда (если flag=0) | Результат эмуляции |
|---|---|
| {!} | ! |
| {#} | # |
| {+} | + |
| {^} | ^ |
| {{} | { |
| {}} | } |
| {SPACE} | SPACE (пробел) |
| {ENTER} | Enter основной клавиатуры |
| {ALT} | ALT |
| {BACKSPACE} или {BS} | Backspace |
| {DELETE} или {DEL} | Delete |
| {UP} | Стрелка вверх |
| {DOWN} | Стрелка вниз |
| {LEFT} | Стрелка влево |
| {RIGHT} | Стрелка вправо |
| {HOME} | Home |
| {END} | End |
| {ESCAPE} или {ESC} | Esc (Escape) |
| {INSERT} или {INS} | Insert (Ins) |
| {PGUP} | PageUp |
| {PGDN} | PageDown |
| {F1} - {F12} | Функциональные клавиши |
| {TAB} | Tab |
| {PRINTSCREEN} | Клавиша Print Screen (Prt Scr SysRq) |
| {LWIN} | Левая клавиша Windows |
| {RWIN} | Правая клавиша Windows |
| {NUMLOCK on} | Num Lock (on/off/toggle) (включить/выключить/переключить) |
| {CAPSLOCK off} | Caps Lock (on/off/toggle) (включить/выключить/переключить) |
| {SCROLLLOCK toggle} | Scroll Lock (on/off/toggle) (включить/выключить/переключить) |
| {BREAK} | для Ctrl+Break |
| {PAUSE} | Pause |
| {NUMPAD0} - {NUMPAD9} | Цифры (цифровая клавиатура) |
| {NUMPADMULT} | * (цифровая клавиатура) |
| {NUMPADADD} | + (цифровая клавиатура) |
| {NUMPADSUB} | - (цифровая клавиатура) |
| {NUMPADDIV} | / (цифровая клавиатура) |
| {NUMPADDOT} | . (цифровая клавиатура) |
| {NUMPADENTER} | Enter (цифровая клавиатура) |
| {APPSKEY} | Клавиша Windows App |
| {LALT} | Левый Alt |
| {RALT} | Правый Alt |
| {LCTRL} | Левый Ctrl |
| {RCTRL} | Правый Ctrl |
| {LSHIFT} | Левый Shift |
| {RSHIFT} | Правый Shift |
| {SLEEP} | Клавиша спящего режима компьютера |
| {ALTDOWN} | Удерживать Alt в нажатом состоянии, до {ALTUP} |
| {SHIFTDOWN} | Удерживать Shift в нажатом состоянии, до {SHIFTUP} |
| {CTRLDOWN} | Удерживать Ctrl в нажатом состоянии, до {CTRLUP} |
| {LWINDOWN} | Удерживать левый Windows в нажатом состоянии, до {LWINUP} |
| {RWINDOWN} | Удерживать правый Windows в нажатом состоянии, до {RWINUP} |
| {ASC nnnn} | Выслать клавишу, указав её номер |
| {BROWSER_BACK} | Только в 2000/XP: Кнопка "назад" в окне просмотра |
| {BROWSER_FORWARD} | Только в 2000/XP: Кнопка "вперёд" в окне просмотра |
| {BROWSER_REFRESH} | Только в 2000/XP: Кнопка "обновить" в окне просмотра |
| {BROWSER_STOP} | Только в 2000/XP: Кнопка "остановить" в окне просмотра |
| {BROWSER_SEARCH} | Только в 2000/XP: Кнопка "поиск" в окне просмотра |
| {BROWSER_FAVORITES} | Только в 2000/XP: Кнопка "избранное" в окне просмотра |
| {BROWSER_HOME} | Только в 2000/XP: Запускает браузер и переходит на домашнюю страницу |
| {VOLUME_MUTE} | Только в 2000/XP: Выключить звук |
| {VOLUME_DOWN} | Только в 2000/XP: Уменьшить звук (на 4% от 100) |
| {VOLUME_UP} | Только в 2000/XP: Увеличить звук (на 4% от 100) |
| {MEDIA_NEXT} | Только в 2000/XP: Следующий трек в медиа-плеере |
| {MEDIA_PREV} | Только в 2000/XP: Предыдущий трек в медиа-плеере |
| {MEDIA_STOP} | Только в 2000/XP: Остановить воспроизведение в медиа-плеере |
| {MEDIA_PLAY_PAUSE} | Только в 2000/XP: Воспроизведение / пауза в медиа-плеере |
| {LAUNCH_MAIL} | Только в 2000/XP: Запуск почтовой программы |
| {LAUNCH_MEDIA} | Только в 2000/XP: Запуск медиа плеера |
| {LAUNCH_APP1} | Только в 2000/XP: Запуск первой программы пользователя |
| {LAUNCH_APP2} | Только в 2000/XP: Запуск второй программы пользователя |
Send("{ASC 065}")
Send("{ASC 2709}")
Send("{ASC 0xA95}")
Send("{DEL 4}") ; Эмулирует нажатие клавиши Del 4 раза
Send("{S 30}") ; Эмулирует нажатие клавиши 'S' 30 раз
Send("+{TAB 4}") ; Эмулирует нажатие Shift+Tab 4 раза
Send("{a down}") ; Удерживать клавишу A нажатой
Send("{a up}") ;Отпустить клавишу A
Send("{NumLock on}") ;Включает NumLock
Send("{CapsLock off}") ;Выключает CapsLock
Send("{ScrollLock toggle}") ;Переключает состояние ScrollLock
$n = 4
Send("+{TAB " & $n & "}")
$x = Chr(65)
Send("{" & $x & " 4}")
| Команда | Описание |
|---|---|
| Send("{TAB}") | Перейти к следующему элементу управления (кнопка, checkbox и т.д.) |
| Send("+{TAB}") | Перейти к предыдущему элементу управления. |
| Send("^{TAB}") | Перейти к следующей вкладке (на вкладках диалогового окна) |
| Send("^+{TAB}") | Перейти к предыдущей вкладке. |
| Send("{SPACE}") | Можно использовать для переключения флажка или нажатия кнопки. |
| Send("{+}") | Устанавливает галочку (Если это настоящий checkbox.) |
| Send("{-}") | Снимает галочку. |
| Send("{NumPadMult}") | Раскрывает дерево папки SysTreeView32. |
| Команда | Описание |
|---|---|
| Send("!f") | Эмулирует Alt+f, для доступа к меню Блокнота (Alt+ф в русской локализации). Попробуйте другие клавиши! (При нажатии Alt эти буквы становятся подчёркнутыми). |
| Send("{DOWN}") | Перемещение вниз по меню. |
| Send("{UP}") | Перемещение вверх по меню. |
| Send("{LEFT}") | Перемещение влево к новому меню или раскрыть подменю. |
| Send("{RIGHT}") | Перемещение вправо к новому меню или свернуть подменю. |
См. также
SendAttachMode (Опция), SendKeepActive, SendKeyDelay (Опция), SendKeyDownDelay (Опция), ControlSend, BlockInput, HotKeySet, WinMenuSelectItemПример

; Эмуляция нажатия комбинации клавиш Win + R
; Send("#r")
Send("#к") ; если русский язык по умолчанию при загрузке OS, то вместо "#r" нужно "#к", либо в скрипте временно переключать на англоязычную раскладку.
; в англоязычном примере окно называется Run
$hWnd = WinWait("Запуск программы", "", 5)
If Not $hWnd Then
MsgBox(4096, 'Сообщение', 'Окно не найдено, завершаем работу скрипта')
Exit
EndIf
Sleep(100)
; Эмуляция ввода текста notepad.exe и нажатие Enter
Send("notepad.exe{Enter}")
; Ожидание 5 секунд до появление окна блокнота
$hWnd = WinWait("[CLASS:Notepad]", "", 5)
If Not $hWnd Then
MsgBox(4096, 'Сообщение', 'Окно не найдено, завершаем работу скрипта')
Exit
EndIf
Send("Сегодняшняя дата и время {F5}")
Sleep(1000)
; Закрывает блокнот.
WinClose($hWnd)
; При закрытии появится окно с предложением сохранить файл, classname вызываемого окна "#32770", эмулируем нажатие "TAB" для перемещения фокуса на вторую кнопку и "ENTER", чтобы отказаться от сохранения.
WinWaitActive("[CLASS:#32770]")
Sleep(500)
Send("{TAB}{ENTER}")