2015-02-22 3 views
1

Я создал приложение для клавиатуры, которое остается сверху, но не фокусируется, поэтому на сенсорном экране он переадресует все клавиши, которые вы нажимаете на активное приложение через SendKeys.Альтернативы SendKeys?

Он отлично работает с каждым приложением, с которым я его пробовал ... за исключением, конечно, того, что мне действительно нужно для работы с которым является приложение для продажи в Point Of Sale. Приложение POS позволяет пользователю вводить коды элементов на клавиатуре, но у него нет хорошей клавиатуры для сенсорных экранов, поэтому я пытаюсь создать для него внешний (поскольку у меня нет доступа к POS-приложению код).

Это на самом деле работает, когда вы впервые его попробуете, но потом это довольно спорадично. Использование клавиатуры напрямую работает, поэтому я не уверен, почему SendKeys работает только с этим приложением. Я попытался реализовать его несколькими способами: отправка ключей по мере их нажатия, отправка их полностью, когда пользователь нажимает кнопку ввода на клавиатуре, копирует ключи в буфер обмена, а затем использует клавиши отправки для выполнения Ctl-V и затем Enter.

Какие еще варианты можно использовать для имитации нажатия клавиши на другое приложение? SendKeys, похоже, не идеально имитирует нажатия клавиш, так есть механизм более низкого уровня, к которому я могу подключиться?

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

+1

Возможный дубликат [Альтернатива SendKeys при работе над удаленным рабочим столом?] (Http://stackoverflow.com/questions/1138606/alternative-to-sendkeys-when-running-over-remote-desktop) –

+0

@GregtheIncredulous That вопрос заключается в запуске отправки ключей через удаленный рабочий стол (как указано в вопросе), и из того, что я могу сказать, даже самый близкий ответ, который может применяться здесь, требует внесения изменений в исходный код целевого приложения ... который, если бы я доступ к нему, я бы этого не делал. – BVernon

+0

Мог ли я узнать больше о вашем первом приложении? Я пытаюсь создать приложение, которое использует кнопки или горячие клавиши для создания определенных специальных символов и действительно пытается использовать SendKeys или любой другой метод. Он не должен быть совершенным, достаточно хорошим. – Lou

ответ

1

Я нашел для Windows Input Simulator: https://inputsimulator.codeplex.com/

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