有没有办法从命令行使用 Rundll32.exe tcpmonui.dll,LocalAddPortUI 为打印机添加标准 TCP/IP 端口?
或者通过任何其他方式从命令行添加标准 TCP/IP 打印机端口。
答案1
根据这您可以在 XP 中使用 prnport 命令。
答案2
为了让其他人可以找到它,这里是精确的命令(来自cmd.exe
),我运行该命令以在 Windows 7 下以编程方式添加网络打印机(即使经过大量谷歌搜索,这似乎仍然很少见):
cscript c:\Windows\System32\Printing_Admin_Scripts\en-US\prnport.vbs ^
-a -r IP_10.0.0.100 -h 10.0.0.100
rundll32 printui.dll,PrintUIEntry /if /b "printer" /f %windir%\inf\prnhp002.inf^
/r "IP_10.0.0.100" /m "HP LaserJet 4200/4300 PCL6" /Z
(如果你不知道,就像我一样,^
是 cmd.exe 中的行继续符)。你可能必须使用不同的信息文件比上面列出的文件多。我 grep 遍历所有文件以C:\Windows\inf
寻找精确的我查看了打印机驱动程序(HP LaserJet 4200/4300 PCL6”)的文本,找到了我需要的那个。
另一个有用的技巧是运行 PowerShell 单行命令来清除可能存在的任何旧打印机(如果不明显,这将删除您当前安装的所有打印机):
powershell -command "foreach ($p in Get-WmiObject Win32_Printer) {$p.Delete()}"
答案3
你的意思是:
NET USE [local port to bind to ie LPT1] \\ComputerName\printer_share /PERSISTENT:YES
笔记:
- 这适用于 IP 地址,而不仅仅是 URI
- 您可以回送本地打印机
NET USE LPT1: \\127.0.0.1:9100
答案4
这个线程是 Necro'd,但这是我完成打印机安装的方法:
这是我在对 Windows 进行裸机重新安装时用来安装复印机和打印机的脚本。
::Creating a Printer Port
cd c:\windows\system32\printing_admin_scripts\en-us\
Cscript Prnport.vbs -a -r 000.000.000.000 -h 000.000.000.000
::Install Printer Driver
rundll32 printui.dll,PrintUIEntry /ia /m "EXACT NAME OF DRIVER AS WRITTEN IN .inf FILE" /f "\\server\file\.inf"
::Create Printer in System
rundll32 printui.dll,PrintUIEntry /if /b "PRINTER NAME GOES HERE" /f "\\server\file.inf" /r "000.000.000.000" /m "EXACT NAME OF DRIVER AS WRITTEN IN .inf FILE"
确保将 000.000.000.000 更改为您的打印机的 IP。\server\file\.inf 是您的驱动程序的 .inf 文件的位置。
这使得您从一无所有到拥有一台安装好、功能齐全的打印机。