每次都帮人去设置网络打印机是一件很烦的事情,之前在论坛里有看过这方面的资料,花了1个多小时把它搞定,做成自解压直接运行
原文地址1:
http://topic.csdn.net/t/20040412/10/2953808.html#
到winxp的系统中system32目录下找到一个prnmngr.vbs 文件,拷贝过来用
将这句命令添加计划任务
cscript prnmngr.vbs -t -p PrinterName
参数
-t
必需。指定要设置默认打印机。
-p PrinterName
必需。按名称指定要设置为默认打印机的打印机。
/?
在命令提示符显示帮助。
注释
该命令启动 systemroot\system32 目录下的一个脚本。在该目录为当前目录时须在命令提示符键入该命令,或者必须在 cscript 命令的开始位置键入到该目录的完整路径。
如果提供的信息包含空格,请使用引号将文本引起来(例如,"Computer Name")。
原文地址2:
http://bbs.winos.cn/thread-17409-1-2.html
一般来说,安装基于TCP/IP端口的打印机都需要经过两个步骤,第一步是添加TCP/IP端口,第二步是安装打印机驱动程序.
既然要实现无需人工参与批量部署,就肯定离不开脚本或者命令行.好在这些WINDOWS都给予了完美的支持,下面即刻转入正题.
1、添加TCP/IP端口
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\Standard TCP/IP Port\Ports]
"StatusUpdateInterval"=dword:0000000a
"StatusUpdateEnabled"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\Standard TCP/IP Port\Ports\IP_10.10.10.1]
"Protocol"=dword:00000001
"Version"=dword:00000001
"HostName"=""
"IPAddress"="10.10.10.1"
"HWAddress"=""
"PortNumber"=dword:0000238c
"SNMP Community"="public"
"SNMP Enabled"=dword:00000001
"SNMP Index"=dword:00000001
将以上代码保存为注册表REG文件,比如port.reg,双击导入注册表即可完成添加TCP/IP端口.其中端口地址10.10.10.1视自身网络环境而定。
添加TCP/IP端口曾经困扰我多时,谁料到竟然用注册表就可以轻松搞掂.
2、安装打印机驱动程序,WINDOWS支持命令行安装打印机,命令如下:rundll32 printui.dll,PrintUIEntry /?
假设现在要在命令行下安装一台HP 4000型号的打印机驱动程序。那么完整的命令如下:
rundll32 printui.dll,PrintUIEntry /if /b "HP Laserjet 4000 Series PCL" /f %windir%\inf\ntprint.inf /r "IP_10.10.10.1" /m "HP Laserjet 4000 Series PCL" /z
将以上命令保存成bat批处理文件.比如setup.bat,其中端口名称IP_10.10.10.1视自身网络环境而定。
其中
/if 表示用inf文件安装打印机
/b 表示打印机名称,也就是在控制面板/打印机里面看到的打印机名称,这是可以随意更改的
/f 表示驱动程序inf文件的路径,以上例子中,由于WINDOWS2000/XP已经集成了HP4000型打印机,所以路径就是%windir%\inf\ntprint.inf ,支持UNC路径。
/r 表示TCP/IP端口名称
/m 表示打印机标准名称,这个名称由inf文件确定,如例子中ntprint.inf文件里就有HP Laserjet 4000 Series PCL这个字串,不可更改
/z 表示是否共享该打印机,由大小写来区分
更多参数可以使用rundll32 printui.dll,PrintUIEntry /?查看
最后,安装的两个步骤都已经准备好.一个是port.reg文件,一个是setup.bat文件.再把这两个文件用WINRAR整合成自解压格式HP4000.EXE.放到共享文件夹或者网页上或者活动目录的启动脚本中就可以实现大规模部署.