Послать нажатия клавиш (SendKey)

Ответить
Аватара пользователя
Alex
Ас
Сообщения: 2833
Зарегистрирован: Вт апр 05, 2005 3:28 pm
Откуда: Kaliningrad City
Благодарил (а): 2 раза
Поблагодарили: 91 раз
Контактная информация:

Послать нажатия клавиш (SendKey)

Сообщение Alex » Вс июл 08, 2007 10:16 am

Миссия действия:
Действие для отправки нажатий клавиш / текста в заданное приложение или окно. В момент отправки желательно, чтобы на клавиатуре не производились никакие нажатия, так как это может исказить посылаемый текст.
Для отправки комбинаций клавиш желательно использовать символы в нижнем регистре, например:
^(c) - правильно
^(C) - неправильно

В поле ввода отправляемого текста следующие символы являются служебными:
+#%^(){}
Для того, чтобы вставить именно эти символы в текст, а не выполнить их служебную функцию, необходимо вставить эти символы в двойном количестве. Например, для отправки текста "Hello World %)" необходимо вставить текст:
Hello World %%))

Поля на форме:
Отправить в: - Выбор куда отправлять нажатия клавиш;
Активное окно - Отправка будет производиться в текущее активное на экране окно;
Заданное окно - Отправка будет производиться в заданное окно;
Заголовок окна - Заголовок окна, в которое будет производиться отправка;
Заданную программу - Отправка будет производиться в заданную программу. При этом выбирается текущее активное окно заданной программы;
Наименование программы - Путь к программе, в которую будет производиться отправка нажатий клавиш;
Использовать полный путь к программе - При включении данной опции будет использоваться полный путь к программе. Полезно, если одна и та же программа запускается из разных каталогов и необходимо точно указать в какую из них производить отправку;

Набор клавиш - Текст, ввод которого эмулируется программой. Начиная с версии 1.8.9 может содержать переменные, результаты выполнения других функций и т.д.
Ожидать завершения послания- Опция разрешающая переход к следующим действиям задачи только после окончания отправки всего текста;

Кнопки, добавляющие в отправляемый текст коды клавиш, модификаторов и т.д.:
Добавить код - Добавляется код нажимаемой служебной клавиши (например, {TAB}, {ENTER}). Для отправки простых (неслужебных) клавиш можно просто ввести нужный текст.
Добавить модификатор - Добавляются модификаторы (Ctrl,Alt,Win,Shift);
Сменить раскладку клавиатуры - Добавляется команда смены раскладки клавиатуры. Нужную раскладку необходимо предварительно выбрать в списке;
Добавить задержку - Кнопка для задания задержки в миллисекундах в посылаемой строке;


Результирующие параметры:
Success - Результат выполнения действия, успешно или нет;

krotxx1
Пассажир
Сообщения: 2
Зарегистрирован: Вт фев 12, 2013 5:56 pm
Благодарил (а): 0
Поблагодарили: 0

Re: Послать нажатия клавиш (SendKey)

Сообщение krotxx1 » Ср фев 13, 2013 11:45 pm

я создал задачу преместить курсор.
двойной клик .
отправить в заданное окно (выбрал процесс)
послать нажатие (выбрал E ) в игре сесть в транспорт

в конечном итоге до нажатия E все происходит норомально ,а вот Е не нажимается.
а так же проверял на нажатие правой кнопки мыши - тоже не нажимается
помогите! как это сделать чтобы функцианировало.
игра BF3

krotxx1
Пассажир
Сообщения: 2
Зарегистрирован: Вт фев 12, 2013 5:56 pm
Благодарил (а): 0
Поблагодарили: 0

Re: Послать нажатия клавиш (SendKey)

Сообщение krotxx1 » Ср фев 13, 2013 11:46 pm

я создал задачу преместить курсор.
двойной клик .
отправить в заданное окно (выбрал процесс)
послать нажатие (выбрал E ) в игре сесть в транспорт

в конечном итоге до нажатия E все происходит норомально ,а вот Е не нажимается.
а так же проверял на нажатие правой кнопки мыши - тоже не нажимается
помогите! как это сделать чтобы функцианировало.
игра BF3

Аватара пользователя
adept
Ас
Сообщения: 177
Зарегистрирован: Ср июн 05, 2013 8:57 pm
Благодарил (а): 16 раз
Поблагодарили: 12 раз
Контактная информация:

Re: Послать нажатия клавиш (SendKey)

Сообщение adept » Вт июл 10, 2018 7:47 pm

в связи с тем, что в действии нельзя напрямую добавить клавишу контекстного меню [≣] (по-английски menu key или application key)

остаётся пользоваться действием клика правой кнопки мыши (ПКМ)

но не во всех ситуациях это решение подходит

к счастью, есть в Windows альтернативное сочетание клавиш - Shift+F10:

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

+({F10})
код используйте в поле ввода действия SendKeys
Помогаю в автоматизации процессов на компьютере с помощью xStarter с 2012 года
Нужна подсказка, готовое решение или обучение? Поделись подробностями, напиши мне!
ВКонтакте: vk.com/s0f0s | Телеграм: s0ff0s

Ответить