2016年9月4日 星期日

(教學)windows批次檔安裝設定印表機(bat.自動化.驅動.網路)

當數台電腦需要部屬印表機的話,不想麻煩的一台一台設定,我們可以將程序寫成程式碼利用批次檔執行,點兩下就讓電腦自動安裝完印表機,增加工作效率,下面是我所用到的部分並有說明,可依實際需要自己編寫。


注意各系統的cscript.exeprnport.vbs位置可能不同,自己要確認一下。

rem為備註說明,不影響程式

設置RAW或LPR的方法:

%windir%\system32\cscript.exe %windir%\system32\prnport.vbs -a -r %ip% -h %ip% -o raw -n 9100
使用RAW並設置9100
%windir%\system32\cscript.exe %windir%\system32\prnport.vbs -a -r %ip% -h %ip% -o lpr -q LP1
使用LPR並設置LP1

以下為LPR範例:
--------------------------------------------------------------------------------------------------------------------------
@echo off
set ip=192.168.xx.xx
set printername="My Printer"
rem 設定印表機IP和使用者會看到的印表機名稱

Wmic OS Get Caption|Find /i "Windows XP">nul&&goto xp
Wmic OS Get Caption|Find /i "Windows 7">nul&&echo WIN7&&goto win7
rem 判斷作業系統是xp還wun7

:xp
set drv="%windir%\inf\ntprint.inf"
set drvname="EPSON LQ-2180C"
rem 選擇XP內建的印表機驅動
%windir%\system32\cscript.exe %windir%\system32\prnport.vbs -a -r %ip% -h %ip% -o lpr -q LP1 > NUL
rem 建立名稱LP1的LPR連接埠
goto last

:win7
if "%PROCESSOR_ARCHITECTURE%" == "AMD64" goto x64
if "%PROCESSOR_ARCHITECTURE%" == "x86" goto x86
rem 判斷系統是32還64位元

:x86
set drv="C:\printer\x86\ESCP68.INF"
set drvname="EPSON LQ-2180C ESC/P2"
rem 設定要安裝的印表機驅動inf檔和inf檔裡的印表機名稱
%windir%\system32\cscript.exe %windir%\system32\Printing_Admin_Scripts\zh-TW\prnport.vbs -a -r %ip% -h %ip% -o lpr -q LP1 > NUL
rem 建立名稱LP1的LPR連接埠
goto last

:x64
set drv="C:\printer\x64\ESCP68.INF"
set drvname="EPSON LQ-2180C ESC/P2"
rem 設定要安裝的印表機驅動inf檔和inf檔裡的印表機名稱
%windir%\SysWOW64\cscript.exe %windir%\SysWOW64\Printing_Admin_Scripts\zh-TW\prnport.vbs -a -r %ip% -h %ip% -o lpr -q LP1 > NUL
rem 建立名稱LP1的LPR連接埠
goto last

:last
rundll32 printui.dll,PrintUIEntry /if /b %printername % /f %drv% /r %ip% /m %drvname%
rem 建立印表機裝置
--------------------------------------------------------------------------------------------------------------------------

沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。