Эмуляция нажатия клавиши windows

Объект WScript.Shell метод SendKeys — имитация нажатия клавиш

Всем привет, с вами автор блога scriptcoding.ru. Сегодня мы затронем такую тему как имитация нажатия клавиш программными средствами с помощью метода SendKeys класса WScript.Shell.

SendKeys – имитация нажатия клавиш – теоретические основы

Метод SendKeys, который позволяет имитировать нажатие клавиш и их комбинаций. Метод SendKeys объекта WScript.Shell является по своей природе слепым, так как он не позволяет указать то приложение, которому назначен ввод с клавиатуры, то есть, если мы сделаем попытку имитировать ввод фразы «привет мир», то она будет обрабатываться лишь тому приложениею, которое в данный момент являются активным. Если активным будет текстовый редактор – то в нем отобразится заданный текст, если антивирусная программа – то, скорее всего, никакой активности не произойдет.

Что бы использовать функцию Wscript SendKeys, нужно объявить переменную, которая будет хранить ссылку на объект WScript.Shell, а уже через эту переменную можно будет вызвать SendKeys.

Общая логика работы:

SendKeys (строка) – Видим, что мы в качестве аргумента должны передать строковое выражение, которое будет хранить имя клавиши или сочетание.

Что бы ввести просто символ или набор символов, мы всего-навсего прописываем их как строку, например: SendKeys(«привет мир»). Для ввода специальных клавиш (например, Enter, стрелки, функциональные клавиши и так далее), их название нужно заключить в фигурные скобки <>.

Ниже приведен список функциональных клавиш и их обозначение:

  • BACKSPACE —, или
  • BREAK —
  • CAPS LOCK —
  • DEL или DELETE — или
  • СТРЕЛКА ВНИЗ —
  • END —
  • ENTER —или
  • ESC —
  • HELP —
  • HOME —
  • INS или INSERT — или
  • СТРЕЛКА ВЛЕВО —
  • NUM LOCK —
  • PAGE DOWN —
  • PAGE UP —
  • PRINT SCREEN —
  • СТРЕЛКА ВПРАВО —
  • SCROLL LOCK —
  • TAB —
  • СТРЕЛКА ВВЕРХ —
  • F1-
  • F2 —
  • F3 —
  • F4 —
  • F5 —
  • F6 —
  • F7 —

    Если нужно указать сочетание специальных клавиш, то следует использовать следующие коды:

    Также стоит помнить, что для ввода символов +, ^, %,

    , (, ) , <, >, [, ] их также нужно заключить в фигурные скобки.

    Если есть необходимость имитации нажатия клавиши несколько раз подряд, то после нее через пробел прописывается количество, например: – 20 раз подряд нажата клавиша n. Стоит учитывать один немаловажный момент, имитация нажатия клавиши не действует для приложений , которые не были разработаны специально для запуска в Microsoft Windows, например, командная строка .

    SendKeys – имитация нажатия клавиш – приступаем к программированию

    Хорошо, с теорией разобрались, теперь давайте приступим к программированию. Давайте для начала рассмотрим следующий пример программного кода на языке vbscript:

    Видим, что тут мы создали массив символов my_arr(16), их количество составляет 17, так как нумерация элементов массива начинается с нуля. Вы можете возразить, а зачем формировать массив, если все можно прописать в одном строковом значении ? Верно, но, цель сценария не просто отправить коды клавиш, а сделать задержку для каждого символа. Мы видим, что с помощью массива идет обработка каждого элемента, он передается методу SendKeys WScript Shell объекта, после идет задержка в 500 миллисекунд (WScript.Sleep 500), и так для каждого символа. Перед выполнением метода мы запускаем блокнот (WshShell.Run «Notepad.exe», 1) с помощью метода Run (подробно про метод Run я написал в статье «Объект WScript.Shell — метод Run»), поэтому, команды будут передаваться текстовому редактору. Как только все команды будут выполнены, появится сообщение (MsgBox «Конец теста!»), которое проинформирует, что сценарий завершил свою работу. На практике это выглядит так:

    • Запускается блокнот
    • Постепенно вводится текст «это»
    • Делаем два раза имитацию нажатия клавиши Enter ()
    • Постепенно вводится текст «простой»
    • Нажимается два раза клавиша Enter ()
    • Постепенно вводится текст «текст»
    • Появляется сообщение «Конец теста!»

    А вот аналогичный пример, но уже на языке jscript:

    В примере на jscript я мог использовать более лаконичный стиль программирования для массива, но, решил этого не делать, что бы было наглядней видно, что и как. Важно, пока не появится сообщение о том, что сценарий выполнил работу, не переключатся на другие приложения , так как это может привести к неожиданным последствиям.

    А вот еще один пример на vbscript :

    В этом примере мы уже будем направлять с помощью метода SendKeys WScript Shell класса команды программе калькулятор – простая арифметика (100/2*0.5). В конце мы выполним имитацию нажатия комбинации клавиш «ALT + F4«, что бы закрыть калькулятор и выведем сообщение — » Операция выполнена! «. Далее мы снова попытаемся отправить в систему комбинацию «CTRL + ALT + DEL» (запуск диспетчера задач), но, ничего не выйдет, видимо эта комбинация не работает из-за соображений безопасности.

    Ну и пример на языке jscript :

    И так, давайте все подытожим… В этой статье мы рассмотрели функцию SendKeys класса WScript Shell, которая позволяет создавать имитацию нажатия клавиш, мы написали четыре программных кода – два на языке vbscript и два на языке jscript. Помним, что программный код работает под управлением сервера сценариев Windows Script Host.

    Спасибо за внимание. Автор блога Владимир Баталий

    Автокликеры для компьютера

    В нашей сегодняшней подборке представлены лучшие коммерческие и бесплатные автокликеры – программы для записи и последующей эмуляции действий клавиатуры, мыши однократно или по расписанию. Они избавят вас от рутинной работы за компьютером и выполнения однотипных действий. Процесс автоматизации проходит безболезненно – нужно только скачать автокликер с правильными характеристиками, которые мы будем рассматривать далее.

    Общие сведения:

    Функции:

    Дополнительные возможности:

    Программа Clickermann представляет собой простой автокликер с лаконичным интерфейсом на русском. Он слегка уступает более продуманным аналогам касательно планировки выполнения записанной последовательности действий, но пользуется большой популярностью в среде геймеров, хотя и не позиционируется как программа для игр.

    Записывать серии кликов можно в редакторе или фоновом режиме. Максимально оптимизировать ваш скрипт и избавить его от «лишних движений» помогают горячие клавиши. Поговаривают, что удачно созданные в Clickermann сценарий выполняет до 50% типичной офисной работы вместо сотрудника или «фармит» валюту в простых браузерных игрушках с эффективностью рядового пользователя.

    Характеристики Clickermann:

    • Компактность и портативность, приложение не требует установки;
    • Русский язык интерфейса позволяет быстро самостоятельно разобраться с управлением;
    • Записанные действия воспроизводятся неограниченное количество раз по требованию;
    • Доступен ручной режим создания и автоматическое отслеживание мыши клавиатуры;
    • В свободном доступе можно не только скачать кликер, но и найти адаптированные скрипты от сторонних разработчиков.

    Полный обзор »

    AutoClickExtreme – полезная утилита от отечественных разработчиков. На стороне приложения понятный интерфейс и прекрасная функциональность. Программа способна записывать скрипты действий как в ручном, так и в автоматическом режиме, у неё масса настроек и различных полезных фишек.

    Решение было бы идеальным, но разработчики перестали активно выпускать обновления и не занимаются рекламой, поэтому популярность утилиты не растет. Агитацию за покупку лицензии ради получаса бесплатного разговора с техподдержкой по Скайпу, согласитесь, трудно назвать грамотным маркетинговым ходом.

    Основные преимущества AutoClickExtreme:

    • Легкий интерфейс пользователя, простой сценарный язык;
    • Нажатия клавиш и движения мыши программа улавливает без пропусков;
    • Можно как вручную записывать действия, так и отслеживать их автоматически;
    • Отлично реализованы хоткеи с возможностью настроить комбинации клавиш;
    • К вашим услугам множество регулируемых параметров работы;
    • Планировщик позволяет запускать скрипт и повторять его в любое время;
    • Стоимость утилиты более чем демократична.

    Этот автоматический кликер призван упростить работу за компьютером. Он позиционируется как средство экономии вашего времени, которое можно теперь потратить на более полезные дела.

    UoPilot, в отличие от описанных выше утилит, создан, скорее для профессионалов, нежели для рядовых пользователей или геймеров. Здесь нет возможности полноценно записывать действия мыши, клавиатуры и т.д. Создатели утилиты предлагают вручную прописывать места кликов, их количество для правой и левой кнопкой мыши, положение указателя. Интервал между кликами регулируется от миллисекунд до часов по вашему требованию, переменные циклы также поддерживаются.

    В целом, утилита отлично справляется с поставленной задачей, но она предназначена исключительно для специалистов, понимающих принцип работы макросов и умеющих писать скрипты вручную. Простой пользователь вряд ли разберется.

    Особенности UoPilot:

    • Функции записи действий с экрана и воспроизведение записи не поддерживаются;
    • Чтобы пользоваться утилитой, необходимо знать принципы написания скриптов;
    • Как и другие кликеры для игры, тонко настраивается по параметрам пользователя;
    • В базе приложения отсутствует планировщик для автоповтора макроса;
    • Последняя версия программы вышла более года назад, обновления отсутствуют.

    Полный обзор »

    Automatic Mouse and Keyboard – автокликер для мыши коммерческого назначения. Конечно, вы можете и бесплатно скачать программу, но после тестирования продукт придется либо купить, либо отложить в долгий ящик. Для полноценной работы с приложением и настройки автокликера вам лучше иметь определенные знания английского. Без них справиться с управлением и прописать даже простое сочетание клавиш будет сложновато. Однако нельзя не отметить хорошую функциональность, высокий уровень юзабилити и качество реализации утилиты. Она приятно выделяется на фоне многих аналогов.

    Спецификации Automatic Mouse and Keyboard:

    • Способна значительно упростить жизнь геймерам – с её помощью часто пишут ботов для онлайн-игр;
    • Умеет как запоминать ваши действия мышкой, клавиатурой, так и воспроизводить написанные в редакторе;
    • Предоставляет завидные возможности по созданию и настройке сценария и его выводу на дисплей;
    • В базе содержит семплы, а также функцию «умного захвата» кликов мышкой;
    • Распространяется на платной основе, отсутствует локализация и версия для Android.

    Ghost Mouse — небольшая утилита с «однокнопочным» управлением. Она даже не поддерживает захват клавиатуры, а просто отслеживает действия мышью в разных местах экрана после активации записи сценария. Когда он готов, вам остается нажать на кнопку Play и наблюдать, как программа будет автоматически кликать мышкой через определенный промежуток времени. Все просто и понятно. Для «фарма» валюты в какой-нибудь браузерной «ферме» такое приложение может и подойти, но для более серьезных задач рекомендуем другие автокликеры скачать.

    Особенности Ghost Mouse:

    • Очень простой принцип работы программы, примитивный интерфейс;
    • Запись скрипта только в автоматическом режиме отслеживания действий;
    • Доступно управление горячими клавишами, минимум настроек, отличная автоматизация;
    • Поддерживается любая компьютерная игра без ИИ;
    • В числе последних, поддерживается операционная система Windows 7 и 8;
    • Разработчик предлагает Ghost Mouse как урезанную версию платного кликера ReMouse с более обширными возможностями.

    Установить автокликер GS Auto Clicker вам предложат почти все топовые сайты с обзорами ПО. Программа популярна и разрекламирована, несмотря на безвозмездное распространение полной версии. Подобно Ghost Mouse, GS Auto Clicker не работает с клавиатурой, но имеет интерфейс ручного добавления сценария. Вы указываете, как нажимать кнопку (двойной или одинарный клик), выставляете позицию указателя на экране и необходимое определенное количество действий. После скрипт должен выполняться в точности, хотя ошибки иногда возникают. Лучше записывайте действия в режиме захвата.

    Преимущества GS Auto Clicker:

    • Программа проста в использовании, распространяется полностью бесплатно;
    • «Горячие клавиши» помогают начать запись и закончить её без лишних действий;
    • Автокликер работает со всеми современными платформами, часто обновляется;
    • Сфера применения неограничена – утилита избавит вас от выполнения однообразных действий в играх, приложениях и даже поможет облегчить примитивный заработок в интернете.

    Полный обзор »

    Free Mouse Auto Clicker в бесплатной версии не представляет интереса среди своего рода программ. Уж чересчур урезали разработчики возможности продукта, до такой степени, что использовать автокликер почти невозможно. Чтобы имитировать клик, вам придется долго выставлять значения позиции в интерфейсе. Для аматоров это неудобно, а профессионалы обычно выбирают другие подобные программы с нормальной реализацией, где есть удобный редактор скрипта с подсветкой синтаксиса.

    Характеристики Free Mouse Auto Clicker:

    • Малый «вес» и низкие системные требования;
    • Сложность в использовании – придется задавать положение курсору мыши только вручную;
    • Доступна установка интервалов повторения клика;
    • Платная версия предоставляет гораздо более полезные функции с лучшей реализацией.

    Как видите, виртуальная компьютерная мышь и клавиатура действительно попогают. Можно задать алгоритм, чтобы фармить валюту в простенькой браузерной игре, автоматизировать серфинг, сделать бот для социалок или автоматически вводить какие-либо данные в компьютер без рутинной ручной работы. Эмуляция действий через автокликер — отличный вариант и прежде, чем определить, какая компьютерная программа займет первое место в нашем рейтинге, еще раз кратко охарактеризуем каждую из них.

    Clickermann – простой и удобный кликер с дружественным интерфейсом, ручным и автоматическим режимом работы, хорошими показателями надежности. Он бесплатный, но довольно качественный. Единственный недостаток – плохо развит планировщик заданий.

    AutoClickExtreme по многим параметрам обходит вышеупомянутого «коллегу» и точно занял бы первую строчку, но Clickermann выигрывает благодаря отсутствию платы за лицензию. В общем, утилита нам очень понравилось, отдать за неё 1000 рублей, если появится необходимость, совсем не жалко.

    Automatic Mouse and Keyboard порадует своими возможностями, но цена программы при отсутствии русского явно кусается. Даже если не ставить её, а просто анализировать изображение с менюшкой, становится понятно, что здесь есть все, что необходимо. Утилиту облюбовали геймеры. С её помощью пишут очень качественных фарм-ботов.

    UoPilot замыкает список достойных русскоязычных утилит-автокликеров. Она предназначена для профессионалов. Простым юзерам придется попотеть, дабы записать качественный макрос, но попробовать можно. Плату ведь никто не требует. Англоязычный Free Mouse Auto Clicker обладает схожими возможностями, но, как мы уже говорили, в бесплатной редакции они сильно урезаны.

    Ghost Mouse и GS Auto Clicker – одного поля ягоды. Это простые и удобные минималистичные приложения с продуманным управлением. Пусть они не поддерживают автоматизированный набор текста и «хромают» в некоторых аспектах (нет планировщика, перевода меню), но все же популярны. Обратите внимание на них, если не желаете долго разбираться с самостоятельным написанием сценариев.

    Читайте также:  Windows 2012 server сетевые диски
  • Оцените статью