我有一个使用 IPX/SP 进行网络的旧版应用程序,它是一个 16 位 DOS 应用程序。无法访问源代码,无法更改任何内容。我可以运行它的唯一方法是在 Windows XP 下。
试图自动化一些流程,并且需要将应用程序正在打印的内容重定向到文本文件。该应用程序根据内容的类型打印到 3 种不同的打印机,LPT1、LPT2、LPT3。
尝试使用旧实用程序“prn2file”,但不起作用。它注册好
prn2file "c:\temp\file1.txt" /p lpt2
并声明它正在将 LPT2 重定向到 c:\temp\file1.txt。它确实创建了文件,但无论我打印什么,它都保持为空。我什至无法从 DOS 命令提示符打印它,它说“无法初始化 PRN”。
所以我听说 PRN2FILE 可能不再适用于最新版本的 Windows。没有确切的数据“最近”是什么意思,但无论如何。所以我尝试了“printfil.com”的试用版,它说他们处理了这个问题。但同样的事情发生了——什么都没有。从不打印。甚至在命令提示符下也不行。他们的支持非常有帮助,并提出了很多建议,但它不起作用。
用 Windows XP 尝试了 3 台不同的计算机,在 VM 中尝试,结果相同。对这里发生的事情有点迷惑。
这似乎是一个非常简单的问题,但为什么它永远不起作用?有人有另一种行之有效的选择吗?
这个创建仅文件打印机的旧过程可能适用于 XP:
转到打印机文件夹并选择添加打印机
选择“本地打印机”
选择端口时,选中“文件 - 打印到文件”旁边的框
在“制造商”下设置“通用”并在右侧选择“通用/纯文本”
命名打印机(
fileprinter
例如)完成安装。
捕获 LPT1 以“欺骗”DOS 应用程序:
现在,如果您在 DOS 应用程序中打印,应该会出现一个窗口,您可以在其中输入打印输出的路径和文件名。