Witajcie

Ostatnio drążę temat związany z możliwościami odczytu danych z urządzeń HID lub emulujących HID. Takim pierwszym z brzegu urządzeniem jest czytnik kodów kreskowych.

Chodzi mi czytanie w tle przesyłanych danych z takich urządzeń. Czytnik przy ustawieniu HID emulacji klawiatury zachowuje się jak zwykła klawiatura-przesyła ciągi znaków to aktywnego okna. W praktyce dajemy focus na jakieś pole tekstowe i tam dostaniemy odczytaną treść.

I teraz jest problem bo chcę aby moja aplikacja robiła to w tle, a nie "na wierzchu".

Szukałem rozwiązań i natrafiłem na kilka opcji ale we wszystkim mam jakieś "ale":

  1. Zwykłe stworzenie jakiegoś keylistnera nie da rady bo nawet nie chce by okno było widoczne więc tym bardziej nie wchodzi w gre jakiś focus na komponent. Myślałem też nad niskopoziomowym keyboard hookiem ale nie znalazłem możliwości określania z jakiego urządzenia HID "płyną" dane-co w tym wypadku wyklucza użycie.

  2. Otwarcie pliku do urządzenia wykorzystując numery VIP i PID. Znalazłem przykład:

http://www.jinvoke.com/USB-hardware-access-from-Java#comment-752

który działa na jakimś urządzeniu do gier. Na czytniku nie dało rady. Zwraca uchwyt do urządzenia -1. Czy jest to związane z jakimś złym doborem parametrów czy moze nie da się stworzyć pliku do klawiatury? Czy moglibyście się podzielić doświadczeniami w tym zakresie??

  1. "RAW data" - <ort>na razie</ort> najmniej dośw mam z tym bo pisze api w javie. Czy udało wam się wykorzystać to do podobnych celów jakie ja sobie wyznaczyłem?

Zostaje jeszcze emulacja na Serial Port ale z tym <ort>na razie</ort> się wstrzymuje-moze wcześniej któryś z was podzieli się swoimi uwagami i moze podobnymi doświadczeniami.

Pzodrawiam