Можно ли написать программу на Windows Mobile для имитации соединения клавиатуры с клином при подключении через USB
Я пишу приложение для Symbol MC9090Z - устройства под управлением Windows Mobile 6.1, а также считывателя штрих-кода / RFID.
Я не хочу слишком углубляться в то, что я делаю, но в определенный момент в моем мобильном приложении было бы очень полезно, если бы я мог использовать сканер в качестве клавишного клина для возврата того, что он сканирует.
Мне интересно, возможно ли это сделать. Насколько я знаю, что нет никакой возможности сделать это с самим сканером, я могу подключить ПК и сканер только через USB, и установка клиентского программного обеспечения на самом ПК не подходит для моей ситуации. Я думаю, что использование active-sync может быть единственным способом действительно соединить устройства. Мне интересно, знает ли кто-нибудь там, возможно ли в этой ситуации написать приложение на клавиатуре, и если да, то как мне начать это делать?
1 ответ
Вау, это был бы дорогой клавишный клин!:).
Я не думаю, что то, что вы хотите сделать, возможно таким образом, чтобы соответствовать вашим требованиям... Когда вы подключаете Symbol через USB-док-станцию, он не доступен как устройство ввода. К нему можно получить доступ как к простому дисководу или (если он синхронизирован с центром устройства) к нему можно получить доступ через ActiveSync. Нет возможности доступа к нему как к устройству ввода (без написания собственного драйвера устройства, но, поскольку вы не можете установить программное обеспечение на компьютер, я полагаю, что и пользовательский драйвер устройства тоже не возможен).
Посмотрите на ActiveSync API. Нет методов для подписки на входные события на самом устройстве, но есть методы для передачи файлов и данных (как и следовало ожидать). Итак, теоретически вы можете использовать этот API, но есть несколько зависимостей:
- Вам нужно написать и запустить на устройстве специальную программу, которая включает сканер штрих-кода и выводит любые штрих-коды в ожидаемый формат данных (или текстовые файлы), и эта программа должна быть запущена на устройстве, когда пользователи хотят сканировать,
- Устройство должно быть в базовой станции и доступно через ActiveSync.
- Вам потребуется написать программу, выполняющуюся на главном компьютере, используя методы API ActiveSync для захвата этих данных.
Но вы упоминаете, что не ставите клиентское программное обеспечение на сам компьютер, так что в вашей ситуации вышесказанное было бы невозможным... Извините, это все, что я мог придумать... Удачи!