2010-08-30 18:49:48 +0000 2010-08-30 18:49:48 +0000
18
18
Advertisement

如何用USB打印机模拟并行(LPT)打印机?

Advertisement

我有一些遗留的软件,只能在通过LPT端口连接的打印机上打印。但是,我需要使用的机器没有并行端口。而且我的打印机是USB设备。

如何让我的电脑认为我的USB打印机是连接到LPT端口的?

进一步说,这是在办公室里用的。我将拥有管理权限,但我希望在设置好一切后,当一个 “普通 "用户登录时,我将会有一个解决方案。

Advertisement
Advertisement

答案 (8)

21
21
21
2010-08-30 19:26:24 +0000

您可以通过使用USB打印机作为连接到LPT1的假 “网络 "打印机来欺骗Windows。

**共享USB打印机*

**使用一个易于记忆的共享名称,例如 "打印机"。

5
5
5
2012-10-26 15:44:27 +0000

使用USB转并联适配器没有任何意义。在这里,我们说的是在只有USB连接的硬件上使用一个非常老旧的软件。在我的案例中,是一台ZEBRA的标签打印机。将驱动程序的端口改为FILE(并腾出USB端口) 3. 安装一个Generic / Text Only驱动,并将端口改为与第1点相同的逻辑USB端口 4. 共享Generic / Text Only打印机,以使其在VBA中容易看到 5.在固定的未使用的IP地址上安装Microsoft Loopback适配器(否则当连接线断开时,你的打印机将无法看到) 6.将打印机分配给LPTx: 端口 按照之前的命令行分配一个LPTx: 端口(这是为每一个需要旧的LPT的SW分配的)

通过几行代码,你就可以像过去那样向打印机发送ASCII码。

2
Advertisement
2
2
2015-02-16 01:35:25 +0000
Advertisement

DOS程序仍然在商业世界中使用。关于如何让它们在现代计算平台上正常工作的建议在网络上比比皆是。以下是我的工作方法。

我们需要使用的16位DOS程序驻留在一个32位的Windows 2003服务器上,这个服务器很快就会被移除。在那之前,在主域的两台32位客户端机器上用组策略映射到程序的共享。启动程序的.cmd文件的快捷方式也被手动放置在主域的客户端上。该程序在Windows 8.1上运行良好。这无疑是一个有点妥协,但当从二级域中运行的DOS程序退役后,机器将升级到64位Windows 8.1。在这个程序中使用了两个不同的并行打印机,但程序只打印到一个端口,而且没有任何选项可以改变这种行为。需要将支票打印到激光打印机上? 需要连接到LPT1端口。需要将数据转储打印到点阵打印机?它也需要连接到LPT1端口。有两个人每天都在使用这个程序,所以我们就用他们的电脑,每台打印机一台。让我们安装第一台打印机:

–如果电脑有物理DB-25(并口)端口,你可以在BIOS中禁用。Windows 8.1将不支持它,我们不需要它。

–用一个型号为16899的Cable-to-Go的USB转DB25并行打印机适配器来连接打印机和电脑。该适配器会自动安装,不被识别为并行设备或LPT端口。

  • 现在打开设备和打印机。单击 Add printer(添加打印机),然后选择 The printer I want is not listed(我想要的打印机未列出)。在下一个对话中选择添加本地打印机或手动设置的网络打印机,在下一个对话中选择使用现有端口。从列表中选择USB的虚拟打印机端口,选择USB001或USB002,而不是LPT端口选项。

  • 第一台打印机是松下KX-P1191多模式点阵打印机。该打印机没有出现在要求提供驱动程序的对话框中,点击Windows Update更新也无济于事。在松下的支持网站上一查,显示该打印机此时完全不支持,但松下的技术支持专家帮着找出了线索,找到了随Windows 8.1附带的爱普生FX系列1(80)驱动程序。现在打印机安装好了,效果很好。

现在打印机安装好了。但是它的端口是USB001,程序只能打印到LPT1端口。这个方案相对来说比较直接,直接集成到启动程序的批处理文件中就可以了。让我们老生常谈,在我们的打印机上玩个小把戏:共享打印机,然后打印到LPT1上,这样就可以了。

–右键点击打印机,选择属性。共享打印机,不要把它列在目录中,创建一个简短的共享名称只是为了好的措施,然后确保客户机的用户在安全选项卡下的组或用户名区域中列出。

–将向这些打印机打印的两个人创建了我的工资单,所以我给了他们域管理权限。这可能是没有必要的。

现在修改批处理文件,并使用记录良好的net use命令来实现打印方案:

@echo off
::delete the printer
net use lpt1 /delete
::add the printer
net use lpt1 \\COMPUTER\PRINTER /persistent:yes
::fire up the nasty ol' DOS program
<existing syntax used to start the program>

其中COMPUTER是计算机的名称,PRINTER是打印机的共享名称。该程序在第二台电脑上使用Windows 8.1提供的 “HP LaserJet 1100 (MS) "驱动程序对HP LaserJet 1100打印机同样有效。"每个人 "可以被删除。该用户是否需要域管理权限?可能不需要,如果一切都从一个域中运行的话。

系统错误66:

系统错误66:

检查你的语法。你可能拼错了计算机的名字,打印机的名字,或者是漏掉了冒号?根据微软的文档,只需要一个冒号。在 lpt1[:]中添加一个不必要的冒号会导致失败吗?

关于网络使用 https://technet.microsoft.com/en-us/library/bb490717.aspx

2
2
2
2010-08-30 20:09:20 +0000

也许你可以看看 WinPrint :

获取DOS程序产生的标准打印机输出,并将其转发给默认的Windows打印机。转换代码页,剥离空页,支持BOX DRAWINGS chars。适用于所有Windows平台。

2
Advertisement
2
2
2014-08-27 08:13:02 +0000
Advertisement

使用DOS打印程序来操作你的可用端口到需要的设备。你可以从这个lin https://www.dropbox.com/s/gdx05sckmbqnast/dosprint.exe?dl=0 (dos Print) https://www.dropbox.com/s/alf6hdd5fctepmo/dosprintui.exe?dl=0 (dos Print UI)

首先以管理员的身份运行dosprint和dosprintui,然后双击dosprintui托盘图标,你可以得到一个可用端口的列表,然后双击lpt1或在set按钮中选择你想要的打印机,然后点击确定。BINGO现在你可以打印到LPT1端口,你的USB打印机将为你打印。

0
0
0
2017-12-06 15:24:37 +0000

我也是在同样的位置,使用定制设计的商务Clipper软件。看了一些并行仿真软件,打印到USB打印机的工作原理,但也有自己的问题。我找到了Harbour HMG,在修改了几行代码后,重新编译了应用程序软件到32位。我还让我的应用程序将数据写入临时文件,我用Microsoft Access抓取这些文件来输出一些格式化的报告。哦,BTW。现在,应用程序在64位的windows 10中工作,内存和速度都有了很大的改善。此外,我还可以将报告发送到USB线上的打印机或墨水喷射器或其他我选择的东西。

0
Advertisement
0
0
2010-08-30 19:03:35 +0000
Advertisement

市场上有很多 “并联到USB适配器"。你可以在网上买到一个10美元左右的,可能是个好地方。

0
0
0
2010-08-30 19:29:20 +0000

你没有说你使用的是什么硬件,但假设是 Wintel PC,你应该可以买到一个通用的并行端口卡,几乎不需要什么钱。除此以外,你可以按照 harrymc 的建议,使用 NET USE 来重定向它。

Advertisement

相关问题

27
21
13
3
8
Advertisement
Advertisement