Проброс сканера ШК в режиме SSI over USB CDC через RDP
Сложности проброса сканеров ШК через RDP
При подключении сканера штрихкодов в стандартном режиме эмуляции клавиатуры (HID Keyboard) сканирование в сессии 1С/RDP происходит с задержками, «проглатыванием» первых цифр штрихкода или переключением раскладки (RU/EN). Перевод сканера в режим прямого протокола SSI over USB CDC (виртуальный COM-порт) решает проблему, но сканер перестает определяться внутри сеанса удаленного рабочего стола.
| Режим сканера | Поведение в локальной ОС | Поведение в сессии RDP |
|---|---|---|
| HID Keyboard | Работает как ввод текста с клавиатуры | Зависит от языка ввода, ошибки при быстром сканировании |
| USB CDC / Virtual COM | Создает виртуальный COM-порт (COM3, COM4) | Порт не пробрасывается без настройки RemoteFX USB или change port |
| Zebra SSI over USB CDC | Двусторонний обмен командами (подсветка, бипер) | Требует выделенного проброса драйвера Zebra CoreScanner |
Инструкция по настройке проброса USB CDC / COM в RDP
- Установка драйверов виртуального COM-порта на локальном ПК: переведите сканер в режим эмуляции COM с помощью сервисного управляющего штрихкода из руководства (например, «USB CDC Host» или «SSI over USB CDC»). Установите официальный драйвер производителя (Zebra CDC Driver / Honeywell Virtual COM Port Driver). Убедитесь, что в
devmgmt.mscпоявился портPorts (COM & LPT) -> Zebra CDC Scanner (COM3). - Включение проброса COM-портов в свойствах RDP-клиента: в файле
.rdpили окнеmstscперейдите: Локальные ресурсы > Подробней... > Поставьте галочку напротив «Порты» (Ports). Строка в RDP-конфиге:redirectcomports:i:1 - Активация политик RemoteFX USB Redirection на сервере и клиенте: откройте
gpedit.msc> Конфигурация компьютера > Административные шаблоны > Компоненты Windows > Службы удаленных рабочих столов > Узел сеансов удаленных рабочих столов > Перенаправление устройств и ресурсов:- Установите политику «Не разрешать перенаправление COM-портов» в положение
Отключено.
- Установите политику «Не разрешать перенаправление COM-портов» в положение
- Проверка сопоставления портов в удаленной сессии: откройте командную строку внутри терминального сеанса RDP:
change port /queryВы должны увидеть сопоставление:
COM3 = \Device\RdpDrp\...
Для продвинутых протоколов (Zebra SSI): Если учетная система (1С) использует прямой обмен по протоколу Zebra CoreScanner SDK (для управления звуковыми сигналами и передачей картинок со сканера), используйте проброс физического USB-устройства целиком через RemoteFX USB Redirection (политика Allow RDP redirection of other supported RemoteFX USB devices).
Частые вопросы (FAQ)
В чем главное преимущество режима USB CDC над эмуляцией клавиатуры (HID)?
В режиме COM-порта поток данных поступает напрямую в порт ввода без задействования клавиатурного буфера, независимо от текущей языковой раскладки (RU/EN) и состояния клавиши CapsLock.
Почему команда change port /query не показывает мой локальный COM-порт?
Проверьте, не занят ли порт другим локальным процессом на клиенте, и включен ли параметр redirectcomports:i:1 в свойствах RDP-подключения.
Как привязать проброшенный COM-порт к фиксированному номеру для 1С?
Используйте системную команду сопоставления в логон-скрипте пользователя: net use COM1: \\tsclient\COM3 /persistent:yes.
Нужно ли ставить драйвер сканера на сам терминальный сервер?
При стандартном пробросе COM-порта через драйвер RDP-редиректора (RdpDrp) драйвер на сервере не требуется. Однако специализированные библиотеки 1С (1C:Сканеры штрихкода) должны быть зарегистрированы на сервере.