码迷,mamicode.com
首页 > 其他好文 > 详细

批处理 安装 网络打印机

时间:2018-01-20 22:54:59      阅读:240      评论:0      收藏:0      [点我收藏+]

标签:and   内容   window   ...   laserjet   ntc   eof   wait   problem   

*Because there are many Windows computers in the company, using traditional manual steps to install printer drivers step by step is really too cumbersome and wasting time. Now we want to implement script installation of network printers.

@echo on
echo Auto to inistall print driver!!!

color 0a

rem 以下是判断端口
set count=0
:addreginfo
set /a count=%count%+1
if exist 打印机%count%.txt (set filename=打印机%count%.txt) else (goto eof)
for /f "tokens=2 delims==" %%a in (‘type %filename% ^|findstr /I "打印机IP="‘) do set pIP=%%a

if /I "%pIP%"=="LPT1:" goto addreginfo
if /I "%pIP%"=="LPT2:" goto addreginfo

rem 以下是添加端口在注册表中的信息
set regpath1=HKEYLOCALMACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\Standard TCP/IP Port\Ports\IP
set regpath2=HKEYLOCALMACHINE\SYSTEM\ControlSet001\Control\Print\Monitors\Standard TCP/IP Port\Ports\IP
@echo off
:addreg1
@reg add "%regpath1%%pip%" /v "Protocol" /d "00000001" /f /t REGDWORD >nul 2>nul
@reg add "%regpath1%%pip%" /v "Version" /d "00000001" /f /t REGDWORD >nul 2>nul
@reg add "%regpath1%%pip%" /v "HostName" /d "" /f >nul 2>nul
@reg add "%regpath1%%pip%" /v "IPAddress" /d "%pip%" /f >nul 2>nul
@reg add "%regpath1%%pip%" /v "HWAddress" /d "" /f >nul 2>nul
@reg add "%regpath1%%pip%" /v "PortNumber" /d "9100" /f /t REGDWORD >nul 2>nul
@reg add "%regpath1%%pip%" /v "SNMP Community" /d "public" /f >nul 2>nul
@reg add "%regpath1%%pip%" /v "SNMP Enabled" /d "00000000" /f /t REGDWORD >nul 2>nul
@reg add "%regpath1%%pip%" /v "SNMP Index" /d "00000001" /f /t REGDWORD >nul 2>nul

:addreg2
@reg add "%regpath2%%pip%" /v "Protocol" /d "00000001" /f /t REGDWORD >nul 2>nul
@reg add "%regpath2%%pip%" /v "Version" /d "00000001" /f /t REGDWORD >nul 2>nul
@reg add "%regpath2%%pip%" /v "HostName" /d "" /f >nul 2>nul
@reg add "%regpath2%%pip%" /v "IPAddress" /d "%pip%" /f >nul 2>nul
@reg add "%regpath2%%pip%" /v "HWAddress" /d "" /f >nul 2>nul
@reg add "%regpath2%%pip%" /v "PortNumber" /d "9100" /f /t REGDWORD >nul 2>nul
@reg add "%regpath2%%pip%" /v "SNMP Community" /d "public" /f >nul 2>nul
@reg add "%regpath2%%pip%" /v "SNMP Enabled" /d "00000000" /f /t REGDWORD >nul 2>nul
@reg add "%regpath2%%pip%" /v "SNMP Index" /d "00000001" /f /t REGDWORD >nul 2>nul
goto addreginfo
:eof

rem 以下是重新启动打印服务,使新端口生效
:restartservice
cls
echo. Don`t close this window, you are adding a printer. Please wait a minute.

echo.
echo 正在启用打印机端口...
echo.
net stop spooler >nul 2>nul
net start spooler >nul 2>nul

rundll32 printui.dll,PrintUIEntry /dl /n "TOSHIBA e-STUDIO455Series PCL6" /f "%pinf%" /r "%pIP%" /q

rem 以下是添加打印机
set count=0
:instprinter
set /a count=%count%+1
if exist 打印机%count%.txt (set filename=打印机%count%.txt) else (goto over)

for /f "tokens=2 delims==" %%a in (‘type %filename% ^|findstr "打印机IP="‘) do set pIP=%%a
for /f "tokens=2 delims==" %%a in (‘type %filename% ^|findstr "打印机名称="‘) do set pname=%%a
for /f "tokens=2 delims==" %%a in (‘type %filename% ^|findstr "打印机型号="‘) do set pmodel=%%a
for /f "tokens=2 delims==" %%a in (‘type %filename% ^|findstr "打印机INF位置="‘) do set pinf=%%a
echo.

echo.
echo.Already added, the printer information is as follows:
echo.
echo IP :%pIP%
echo 名称 :%pname%
echo 型号 :%pmodel%
:echo 驱动 :%pinf%
if /I "%pIP%"=="LPT1:" (goto ok)
if /I "%pIP%"=="LPT2:" (goto ok) else (set pip=IP%pip%)
:ok
rundll32 printui.dll,PrintUIEntry /if /b "%pname%" /f "%pinf%" /r "%pIP%" /m "%pmodel%"
goto instprinter
:over
echo.
color 0b
echo If you have any problems, please contact the administrator.
pause
exit
echo 请按任意键退出
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ *


网络打印服务器配置文件“打印机1.txt”的内容:

打印机IP=172.16.9.2
打印机名称=TOSHIBA e-STUDIO
打印机型号=TOSHIBA e-STUDIO455Series PCL6
打印机INF位置=E:\TOSHIBA_64\110104_Loire_CDV210_CN_XP_VISTA_X64_PLC6\Driver\eS4px6.inf

本地打印机配置文件“打印机2.txt”的内容:
打印机IP=LPT1:
打印机名称=本地HP 3050
打印机型号=HP LaserJet 3050 Series PCL 5e
打印机INF位置=D:\sysbak\打印机\hp3055\Drivers\2K_XP_Vista\hppcp501.inf

参考文档:
https://www.v2ex.com/t/291274
http://blog.51cto.com/foxtox/543685
https://zhidao.baidu.com/question/1823158923371470628.html

批处理 安装 网络打印机

标签:and   内容   window   ...   laserjet   ntc   eof   wait   problem   

原文地址:http://blog.51cto.com/gentleman/2063264

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!