4

У меня есть несколько систем, работающих под управлением устаревшего программного обеспечения на скрипучем оборудовании. Я хочу иметь возможность автоматизировать множество задач с помощью сценариев автоматической горячей клавиши для задач, которые в настоящее время должны выполняться вручную. Я действительно не хочу устанавливать какое-либо программное обеспечение на эти машины, а в некоторых случаях не могу (так как они уже исчерпаны в ресурсах, или используют сборки Linux, или работают странные урезанные версии Windows из каменного века)

Мне нужно решение, с помощью которого я могу получать нажатия клавиш на машине в режиме реального времени, не устанавливая на нее никакого программного обеспечения. Тем не менее, наличие драйверов или программного обеспечения на машине, отправляющей нажатия клавиш, не является проблемой.

Это проблема, которую мне нужно решить. Учитывая ограничение на принимающем компьютере, я могу только представить, что решение может быть в том, что ввод вводится через что-то вроде ключа Bluetooth или USB-приемника, который регистрируется как клавиатура, но на самом деле получает нажатия клавиш, исходящие с другого компьютера. Если кто-нибудь знает, существует ли такая часть оборудования, не могли бы вы опубликовать ниже? Или, альтернативно, любое другое решение, которое соответствует поставленным целям.

5 ответов5

5

Вы можете использовать удаленный KVM на основе IP для генерации нажатий клавиш на другом компьютере в режиме реального времени.

Просто подключите клавиатуру KVM (и, возможно, видео и мышь) к компьютеру, на который вы хотите отправить удаленные нажатия клавиш.

Затем вы подключаетесь к IP-адресу KVM через веб-браузер или прилагаемое системное приложение и отправляете любые нажатия клавиш по своему желанию.

Одним из таких продуктов является серверное дистанционное управление Tripp Lite, External KVM over IP, а другим - Lantronix Spider KVM.

В качестве альтернативы, вы можете перестроить версию DIY одного из них с поддержкой только клавиатуры (а не клавиатуры, видео и мыши), используя USB-плату Teensy, подключенную к модулю Ethernet WIZ712MJ с помощью адаптера Ethernet WIZ812.

В этот момент вы можете использовать библиотеки Teensy для сетей Ethernet и клавиатуры, чтобы написать небольшую программу, которая порождает сервер с помощью Server.begin() , ожидает подключения, а затем имеет бесконечный цикл while с чем-то вроде следующего содержимого для создания сетевой эхо-сервер:

if (myclient.available()) {
    Keyboard.print(myclient.read());
}

Вы, вероятно, захотите конкретизировать это с некоторой проверкой ошибок и тому подобным, но это должно работать как скелет.

4

Вот возможное решение, требуется некоторая сборка.

Вы можете использовать микроконтроллер для получения нажатий клавиш по сети и передачи их на компьютер, к которому он подключен. Одним из возможных вариантов будет платформа Arduino и ее клавиатура, поскольку она может быть проще, чем создание аппаратного обеспечения и библиотек самостоятельно. Вам также понадобится программное обеспечение DIY для отправки нажатий клавиш, а в случае Arduino оно может быть записано в его среде IDE(упрощенная среда JAVA). Существуют и другие платформы, и большинство из них можно уменьшить в производственной среде, если вы обнаружите, что это слишком большая или дорогая для развертывания (так как вам может потребоваться более одной).

3

Это далеко не готовое решение, но вы можете адаптировать что-то вроде Teensy USB для выполнения этой задачи. Я бы хотел настроить Teensy USB для отображения в виде клавиатуры, а затем загрузить программу на Teensy USB, которая

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

Я лично подключил один к педали и запрограммировал ее, чтобы послать нажатие клавиши «s», когда я нажал на педаль, но этот проект был намного проще, чем вам нужно.

0

Было бы немного странно, что клавиатура получит ввод. Я думаю, что немного лучше понимаю ваш угол отправки последовательности нажатия клавиш с ноутбука. Приемник Bluetooth (USB-ключ) выполняет прием с клавиатуры Bluetooth. Поэтому забудьте о клавиатуре, так как вместо этого у вас есть ноутбук. Там может быть приемник Bluetooth общего назначения, который позволит вам подключать и получать данные клавиатуры с другого устройства Bluetooth. Данные клавиатуры являются частью профиля Bluetooth для HID ("Профиль устройства интерфейса пользователя"), поэтому, по крайней мере, это рассматривается. Но приемник, который поставляется с клавиатурой Logitech, например, может не разрешать прием ни от чего, кроме клавиатуры Logitech. При поиске в Amazon «USB-приемника данных Bluetooth» выявляются некоторые из них, которые могут работать как Mediastic.

У вас уже есть способ, которым вы планируете отправлять данные с ноутбука через Bluetooth? Вы спрашивали о получении, но не об отправке. Есть несколько интересных вопросов уже об этом -

-1

Совершенно возможно. На самом деле это точная векторная атака, которая называется BAD USB .

Вы можете подробно прочитать об этом здесь.

По сути, речь идет об изменении (перепрограммировании) USB-накопителя с запоминающего устройства на другое устройство HUD. Это не так просто сделать, но если у вас есть время и навыки - да, это возможно. Конечно, не легко, хотя.

Устройство BadUSB могло даже заменить BIOS компьютера - опять-таки, эмулируя клавиатуру и разблокировав скрытый файл на флэш-накопителе USB.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .