Я застреваю при захвате событий клавиатуры.
Я работаю со сканером штрих-кода, который распознается системой как традиционная клавиатура (это единственный режим, у моего клиента много бюджетных сканеров, которыене может эмулировать виртуальный COM-порт).
Моя цель - определить, к какому порту подключен этот сканер, захватить любой вход с этого порта и предотвратить его обработку операционной системой (я не хочу, чтобы номера штрих-кодов появлялись при сфокусированном вводе).
Все это должно выполняться фоновой службой, которая никогда не является активным окном, И решение должно работать как в Linux, так и в Windows.
Мне удалось захватить ввод с помощью jnativehook , но не удалось предотвратить его обработку операционной системой.
Насколько я знаю, невозможнодобиться этого с помощью чистой Java (JVM дает доступ к событиям клавиатуры только тогда, когда окно приложения сфокусировано), так как мне решить эту проблему?Я в порядке, используя jni и c ++, если это необходимо, но я не знаю, с чего начать.