批处理脚本 - 打印



打印也可以通过 NET PRINT 命令在批处理脚本中控制。

语法

PRINT [/D:device] [[drive:][path]filename[...]]

其中 /D:device - 指定打印设备。

示例

print c:\example.txt /c /d:lpt1

以上命令将 example.txt 文件打印到并口 lpt1。

命令行打印机控制

从 Windows 2000 开始,许多(但不是全部)打印机设置可以通过 Windows 的命令行使用 PRINTUI.DLL 和 RUNDLL32.EXE 进行配置。

语法

RUNDLL32.EXE PRINTUI.DLL,PrintUIEntry [ options ] [ @commandfile ]

其中一些可用的选项如下:

  • /dl - 删除本地打印机。

  • /dn - 删除网络打印机连接。

  • /dd - 删除打印机驱动程序。

  • /e - 显示打印首选项。

  • /f[file] - inf 文件或输出文件。

  • /F[file] - /f 指定的 INF 文件可能依赖的 INF 文件的位置。

  • /ia - 使用 inf 文件安装打印机驱动程序。

  • /id - 使用添加打印机驱动程序向导安装打印机驱动程序。

  • /if - 使用 inf 文件安装打印机。

  • /ii - 使用添加打印机向导和 inf 文件安装打印机。

  • /il - 使用添加打印机向导安装打印机。

  • /in - 添加网络打印机连接。

  • /ip - 使用网络打印机安装向导安装打印机。

  • /k - 将测试页打印到指定的打印机,在安装打印机时不能与命令结合使用。

  • /l[path] - 打印机驱动程序源路径。

  • /m[model] - 打印机驱动程序型号名称。

  • /n[name] - 打印机名称。

  • /o - 显示打印队列视图。

  • /p - 显示打印机属性。

  • /Ss - 将打印机设置存储到文件中。

  • /Sr - 从文件中恢复打印机设置。

  • /y - 将打印机设置为默认打印机。

  • /Xg - 获取打印机设置。

  • /Xs - 设置打印机设置。

测试打印机是否存在

在某些情况下,您可能连接到网络打印机而不是本地打印机。在这种情况下,在打印之前始终有益于首先检查打印机是否存在。

可以使用 RUNDLL32.EXE PRINTUI.DLL 来评估打印机是否存在,该命令用于控制大多数打印机设置。

示例

SET PrinterName = Test Printer
SET file=%TEMP%\Prt.txt
RUNDLL32.EXE PRINTUI.DLL,PrintUIEntry /Xg /n "%PrinterName%" /f "%file%" /q

IF EXIST "%file%" (
   ECHO %PrinterName% printer exists
) ELSE (
   ECHO %PrinterName% printer does NOT exists
)

以上命令将执行以下操作:

  • 它将首先设置打印机名称并设置一个将保存打印机设置的文件名。

  • RUNDLL32.EXE PRINTUI.DLL 命令将用于通过将文件的配置设置发送到文件 Prt.txt 来检查打印机是否确实存在。

广告