我有一个只能在 COM 端口上打印的软件。我只有 USB 端口可用。
我尝试过这个解决方案如何将虚拟 COM 端口映射到物理 USB 端口?
但NET USE COM66: \\name\printer /persistent:yes
命令给了我system error 67
我按照上一个问题中的建议共享了我的打印机。
注意:我不能使用任何类型的适配器。我需要一个软件解决方案
答案1
没有现代打印机通过 COM 端口进行打印,甚至大多数旧打印机也使用 SPP 或 EPP 并行 (Centronics) 端口。我记得的唯一 COM 打印机是 40 多年前的“终端”类型,带有菊花型打印头,或 IBM 打字机。不过,也许一些 POS 热敏收据打印机仍在使用此接口。
因此,如果您说它“在 COM 端口上打印”,则可能意味着非常简单的 ASCII 字符流,以 CR-LF 字符结尾的字符串/行。而所有基于 USB 的位图打印机都使用某种高级语言(PCL 或 PostScript)来控制打印机。即使您将输出映射到虚拟 COM/USB 端口,生成的数据流也将是 ASCII-CR-LF,并且没有 USB 打印机可以理解这一点。
您可能要做的就是将您的 COM 输出虚拟地连接到 Windows“终端”应用程序,然后使用生成的位图作为图像进行打印(包括带有 USB 接口的打印机)。这看起来很丑陋,但 COM 端口打印是一种过时的流行技术。
答案2
也许可以尝试 Epson Virtual Com Port。它将创建一个假的 COM 端口,并与 Windows 上的 USB 端口通信。它甚至可以与非 Epson 打印机一起使用。
用户界面一开始并不是那么直观,但 5 分钟后您就应该能够完成设置。
希望这个对你有帮助。