Назад | Перейти на главную страницу

Перенаправление порта ts RDP

У меня есть 2 пары последовательных устройств (шкала и контактная площадка POS), подключенных к 2 ПК (всего 4 последовательных устройства) с Windows XP, встроенным sp3 (x86), работающим под управлением RDC / rdp 6.0. Я использую эти машины для RDP в виртуальных машинах под управлением Windows 7 Enterprise (x64), на которых установлено мое программное обеспечение для точек продаж. Мне нужно перенаправить com-порты локального ПК (com1 и com2) на виртуальную машину. Я настроил файл rdp для отправки com-портов, и он работает так, как я могу видеть порты, если я добавляю принтер (они отображаются как ts033 и ts034), но программное обеспечение, которое я использую, требует, чтобы оно называлось com1 - com10. Я попытался использовать "net use com3: \ device \ com1, net use com3: \ tsclient \ ts033" и несколько других комбинаций на моей виртуальной машине, чтобы перенаправить ts com-порт на "реальный / виртуальный".

У меня нет денег, чтобы потратить их на покупку последовательного сервера (нового или бывшего в употреблении) или на покупку количества лицензий / рабочих мест для стороннего программного обеспечения. Даже самое дешевое решение от ebay для покупки 4 новых последовательных серверов стоит около 100 долларов, плюс вам придется использовать 4 настенных бородавки, а также дополнительные кабели.

Мой единственный другой вариант - получить 8 адаптеров db9 - rj-45 и отправить их по 4 существующим линиям cat5e и физически подключить их к серверу vm. Я бы предпочел избежать этого, поскольку снова требуется прокладка дополнительных кабелей от POS-терминала / ПК, а также прокладка кабелей от патч-панели к серверу виртуальной машины. Я бы предпочел использовать метод сетевого использования, если бы вы могли рассказать мне, как это сделать, или какое-нибудь другое бесплатное программное обеспечение с открытым исходным кодом, которое существует.

Сообщите мне, если вам понадобится другая информация или что-то неясно.

Итак, после небольшого поиска я наткнулся на довольно случайное доменное имя, на которое был ответ. В http://www.GoodJobSucking.com/?p=214 (да, я тоже не решался щелкнуть по этой ссылке) сообщение в блоге описывает, как использовать com0com (приложение с открытым исходным кодом) для передачи com-порта с одного компьютера на другой с помощью TCP-соединения.

Я обнаружил это только после того, как закрепил и соединил набор кабелей db9 - rj45 и подключил их непосредственно к моему серверу. Сервер смог увидеть данные с весов, но Hyper-V, по-видимому, не предоставляет физического доступа к COM-портам на сервере. Я понятия не имею, почему, но после того, как я немного покопался и, наконец, поискал "com-порт Hyperv named pipe" в Bing, я искал 3-ю ссылку.

Вот шаги, которые я предпринял:

Хост-компьютер / Старый компьютер (x86)

  • Я скачал hub2com с http://sf.net/projects/com0com/files/ и извлек его в C: \ ComPorts \
  • Затем я запустил командную строку и запустил com2tcp-rfc2217 com1 1000 (в конечном итоге я сделаю то же самое для com2 и использую 2000)
  • Это запустит сеанс отладки. Вы можете оставить его активным или запустить скрипт posh или vbs, который запускает его в фоновом режиме, но мне нравится, чтобы он был видимым, чтобы гарантировать, что данные передаются.
  • Теперь я готов передавать данные на свою виртуальную машину

Виртуальная машина (x64)

  • Я скачал com0com с http://sf.net/projects/com0com/files/ и установил на автомат
  • Когда установка была завершена, я устанавливаю флажок «Запуск установки» и нажимаю «Далее».
  • Затем в окне командной строки я набрал «install EmuBR = yes EmuBR = yes», нажал Enter, затем набрал «change CNCA0 PortName = COM1» и нажал Enter. Теперь все настроено, поэтому я закрыл окно.
  • Следующим шагом будет загрузка скомпилированной x64 версии hub2com, найденной в сообщении блога, ссылка на который приведена выше, и ее повторное извлечение в C: \ ComPorts.
  • Затем я снова запустил командную строку и ввел «com2tcp-rfc2217 \. \ CNCB0 RemoteHostName 1000» (заменив RemoteHostName именем хоста моей старой машины) и нажал Enter.
  • Это снова запустило сеанс отладки, и я увидел, как поступают данные.

На этом этапе я подключил свои весы для торговых точек (CAS PD-II) к последовательному порту com1 хоста и поместил что-то на весы. Я сразу вижу, как данные поступают через окно командной строки, и программное обеспечение POS определяет вес.

Я действительно надеюсь, что это избавит кого-то от нескольких недель попыток заставить это работать, как я.