写入 LPT1 的旧版软件如何寻址 USB 打印机?

写入 LPT1 的旧版软件如何寻址 USB 打印机?

我有一个使用多年的程序,它根据文本文件中的控制语句来管理文本文件的打印。

例如,它将在每页的顶部打印标题、更改每英寸的行数、更改每英寸的字符数、设置边距、从纵向更改为横向等。它通过将控制字符串直接写入打印机并将打印机寻址为 LPT1、LPT2 或 LPT3 来实现这些功能。

现在我需要用它来寻址连接到 USB 端口的打印机,但我不知道如何寻址。

打印机属性告诉我打印机已连接到端口“DOT4_001”,但当我尝试写入该端口时,它只会在当前目录中创建一个同名文件,而不会写入打印机。同样,我无法弄清楚如何从 DOS 窗口使用简单命令“type file.txt >xxxx”写入该打印机,尽管将“LPT1:”替换为“xxxx”可以适用于连接到并行端口的打印机。

所以我的问题是“如何直接寻址连接到 USB 端口的打印机?”

答案1

如果您的 USB 打印机与您的程序发送的代码兼容(例如 PCL),那么您可以执行以下操作:

  • 共享您的打印机(并给它一个简单的名字,例如 MYPRINTER)
  • 打开命令提示符
  • NET CONFIG WORKSTATION在顶部输入并记下您的“计算机名称”。(例如 \MYCOMP)
  • 类型NET USE LPT1 \\MYCOMP\MYPRINTER /PERSISTENT:YES
  • 类型exit

现在您可以打印到 LPT1,Windows 会将输出重定向到您的 USB 打印机。

答案2

我注意到 OP 想要打印文本文件。许多仅支持 USB 的打印机都是所谓的 GDI 打印机,它们依靠 Windows 图形引擎将页面转换为纸上的点。这些打印机不理解文本 - 或者说 PCL。因此,Rik 的解决方案不适用于这些打印机。我们需要打印机型号来确定。

然而,还有另一种选择。尿素合成酶旨在从程序中获取文本或 PCL 输出,并将其转换为打印机可以理解的内容。它运行良好,并且可以免费下载。

相关内容