我父亲仍在使用一款非常老旧的 DOS 应用程序,而我负责让它在较新的系统上运行。现在我遇到的问题是我想打印,但该程序仅支持直接打印到 LPT1-3。
我安装了一个 DosBOX SVN(ykhwong,正如这里推荐的)并使用本指南将 LPT1 与我的本地 USB 打印机连接起来。
现在我可以从 DOS 应用程序打印(出现正常的 Windows 打印机对话框),但打印输出完全混乱。它应该只打印一页,但却打印了多页,所有字母一个接一个,如下所示:
R
e
c
e
i
p
t
ykhwongs DosBOX 的配置文件包含如下选项:
dpi=360
width=85
height=110
对于打印机输出,但我不知道它们做什么。
有人遇到过类似的事情,或者知道解决我的问题的其他方法吗?重要的是它必须自动运行,因此打印到文件然后打印到 USB 是不可行的。
答案1
你需要欺骗应用程序,让它认为有一个 LPT1 端口
- 您需要共享的 USB 上的打印机。将其命名为“打印机”。
- 启动 DOS
在运行旧版 DOS 应用程序之前,请输入以下内容:
网络使用 lpt1:\\127.0.0.1\printer /Persistenst:是
启动旧 DOS 应用程序
这会将 LPT1 端口重定向到共享并打印到 USB 打印机。您可以在启动应用程序之前将其放入脚本中。