Я разрабатываю приложение, которое перенаправляет ввод / вывод из параллельного порта, скажем, устройства A на параллельный порт устройства B . Два устройства подключены к сети Ethernet (LAN, WAN, Интернет и т. Д.).
К устройству A подключен физический параллельный порт, но устройство B - это машина без параллельного порта. Это то, что заставляет меня эмулировать параллельный порт на устройстве B таким образом, что Windows думает, что у него есть параллельный порт, и работает точно так же, как он работает с параллельными портами на оборудовании, например. он автоматически определяет, когда устройство подключается к параллельному порту, чтобы можно было установить драйвер для этого устройства.
Если какая-либо часть оборудования подключена к параллельному порту на устройстве A , ввод / вывод перенаправляется на параллельный порт на устройстве B и Windows на устройстве B считает, что какое-то оборудование подключено к устройству B, имеющему собственный параллельный порт, т. Е. Windows не знает, где в мире фактически подключено оборудование; Windows просто заблуждалась, думая, что оборудование подключено непосредственно к устройству B .
Мой вопрос касается части эмуляции. Как мне написать эмулятор параллельного порта в C ++ для Windows 7 так, чтобы я обманул Windows, думая, что у нее есть реальный / аппаратный параллельный порт?
Смежным вопросом может быть то, как Windows обнаруживает оборудование и что происходит в нем, например, когда какое-либо оборудование подключается к параллельному порту компьютера.
Программа будет выглядеть следующим образом.
- Считывание данных с параллельного порта устройства A.
- Записать эти данные в устройство A , которое отправляет их в устройство B сокет.
- Чтение данных из разъема устройства B .
- Записать эти данные в параллельный порт устройства B, что заставляет Windows думать, что к нему подключено некоторое оборудование.
NB: Я должен эмулировать только параллельный порт, то есть только параллельное перенаправление. Использование других портов на устройстве B не допускается. Это требование для этого приложения.
Часть, которую я до сих пор делал, состоит в том, что я написал программу на C ++, которая считывает и записывает данные с параллельного порта и на него соответственно.
Пожалуйста, дайте мне знать, если вам известен лучший подход параллельного порта к перенаправлению параллельного порта через Ethernet (LAN, WAN, Интернет и т. Д.).