某客戶新增一臺佳能 Canon iR2022打印機,自帶網絡模塊,因此可以直接在所有客戶端做本地打印機使用。
添加網絡端口及驅動安裝比較繁瑣(客戶端比較多,登錄用戶僅爲普通用戶,沒有安裝本地打印機的權限),因此考慮採用組策略做開機腳本統一部署。
參考如下命令實現:
prnport -a -r IP_192.168.1.2 -h 192.168.1.2 -o raw -n 9100
rundll32 printui.dll,PrintUIEntry /if /b "Canon iR2022/2025/2030 UFRII LT" /f CNLB0C.INF /r "IP_192.168.1.2" /m "Canon iR2022/2025/2030 UFRII LT"
我用上面的命令實現了安裝,如其他機型可能還需要用到
c. //h:c. /s
prnmngr
prncnfg
*prnport,prnmngr,prncnfg爲VBS腳本,機器自帶,但掛載系統中未帶的驅動用prnmngr不成功,報錯 win32 error 87,因此我用rundll32 printui.dll,PrintUIEntry 解決
具體參數參見相關文檔,不做詳盡描述
rundll32 printui.dll,PrintUIEntry 參數說明
------------------------------------------------------------------------------
------------------------------------------------------------------------------
/ia 用 inf 文件安裝打印機驅動程序
/if 用 inf 文件安裝打印機
/b[name] 基本打印機名
/c[name] 如果操作在遠程機器上,unc 機器名
/dl 刪除本地打印機
/dn 刪除網絡打印機連接
/dd 刪除打印機驅動程序
/f[file] inf 文件或輸出文件
/h[arch] 驅動程序體系結構,爲下列之一: Alpha | Intel | IA64
/m[model] 打印機驅動程序型號名
/n[name] 打印機名
/v[version] 驅動程序版本屬於下列中的一個: Windows 95、98 和 ME | Windows NT 4.0 | Windows NT 4.0 或 2000 | Windows 2000 或 XP| Windows XP
/q 安靜模式,不顯示錯誤信息
/r[port] 端口名
/y 將打印機設爲默認打印機
/z 不要自動共享這臺打印機
/Z 共享這臺打印機,只能跟 /if 選項一起使用
/if 用 inf 文件安裝打印機
/b[name] 基本打印機名
/c[name] 如果操作在遠程機器上,unc 機器名
/dl 刪除本地打印機
/dn 刪除網絡打印機連接
/dd 刪除打印機驅動程序
/f[file] inf 文件或輸出文件
/h[arch] 驅動程序體系結構,爲下列之一: Alpha | Intel | IA64
/m[model] 打印機驅動程序型號名
/n[name] 打印機名
/v[version] 驅動程序版本屬於下列中的一個: Windows 95、98 和 ME | Windows NT 4.0 | Windows NT 4.0 或 2000 | Windows 2000 或 XP| Windows XP
/q 安靜模式,不顯示錯誤信息
/r[port] 端口名
/y 將打印機設爲默認打印機
/z 不要自動共享這臺打印機
/Z 共享這臺打印機,只能跟 /if 選項一起使用
更多的幫助請使用rundll32 printui.dll,PrintUIEntry /?
---------------------------------------------------------------------------
用法: prnport [-adlgt?] [-r 端口][-s 服務器][-u 用戶名][-w 密碼]
[-o raw|lpr][-h 主機地址][-q 隊列][-n 編號]
[-me | -md ][-i SNMP 索引][-y 團體][-2e | -2d]
參數:
-a - 添加端口
-d - 刪除指定端口
-g - 獲得 TCP 端口的配置
-h - 設備的 IP 地址
-i - SNMP 索引,如果已啓用 SNMP
-l - 列出所有 TCP 端口
-m - SNMP 類型。[e] 啓用,[d] 停用
-n - 端口編號,應用於 TCP RAW 端口
-o - 端口類型,raw 或 lpr
-q - 隊列名稱,應用於 TCP LPR 端口
-r - 端口名
-s - 服務器名
-t - 設定 TCP 端口的配置
-u - 用戶名
-w - 密碼
-y - 團體名,如果已啓用 SNMP
-2 - 雙後臺處理程序,應用於 TCP LPR 端口。[e] 啓用,[d] 停用
-? - 顯示命令用法
[-o raw|lpr][-h 主機地址][-q 隊列][-n 編號]
[-me | -md ][-i SNMP 索引][-y 團體][-2e | -2d]
參數:
-a - 添加端口
-d - 刪除指定端口
-g - 獲得 TCP 端口的配置
-h - 設備的 IP 地址
-i - SNMP 索引,如果已啓用 SNMP
-l - 列出所有 TCP 端口
-m - SNMP 類型。[e] 啓用,[d] 停用
-n - 端口編號,應用於 TCP RAW 端口
-o - 端口類型,raw 或 lpr
-q - 隊列名稱,應用於 TCP LPR 端口
-r - 端口名
-s - 服務器名
-t - 設定 TCP 端口的配置
-u - 用戶名
-w - 密碼
-y - 團體名,如果已啓用 SNMP
-2 - 雙後臺處理程序,應用於 TCP LPR 端口。[e] 啓用,[d] 停用
-? - 顯示命令用法
例如:
prnport -l -s 服務器
prnport -d -s 服務器 -r IP_1.2.3.4
prnport -a -s 服務器 -r IP_1.2.3.4 -h 1.2.3.4 -o raw -n 9100
prnport -t -s 服務器 -r IP_1.2.3.4 -me -y public -i 1 -n 9100
prnport -g -s 服務器 -r IP_1.2.3.4
prnport -a -r IP_1.2.3.4 -h 1.2.3.4
prnport -l -s 服務器
prnport -d -s 服務器 -r IP_1.2.3.4
prnport -a -s 服務器 -r IP_1.2.3.4 -h 1.2.3.4 -o raw -n 9100
prnport -t -s 服務器 -r IP_1.2.3.4 -me -y public -i 1 -n 9100
prnport -g -s 服務器 -r IP_1.2.3.4
prnport -a -r IP_1.2.3.4 -h 1.2.3.4
註解:
上一個例子將試圖獲取指定 IP 地址的設備設置。
如果已檢測到設備,那個設備的首選設備會被添加到 TCP 端口。
---------------------------------------------------------------------------------------
上一個例子將試圖獲取指定 IP 地址的設備設置。
如果已檢測到設備,那個設備的首選設備會被添加到 TCP 端口。
---------------------------------------------------------------------------------------
用法: prnmngr [-adxgtl?][c] [-s 服務器][-p 打印機][-m 驅動程序型號]
[-r 端口][-u 用戶名][-w 密碼]
參數:
-a - 添加本地打印機
-ac - 添加打印機連接
-d - 刪除打印機
-g - 獲取默認打印機
-l - 列出打印機
-m - 驅動程序型號
-p - 打印機名
-r - 端口名
-s - 服務器名
-t - 設置默認打印機
-u - 用戶名
-w - 密碼
-x - 刪除所有打印機
-? - 顯示命令用法
[-r 端口][-u 用戶名][-w 密碼]
參數:
-a - 添加本地打印機
-ac - 添加打印機連接
-d - 刪除打印機
-g - 獲取默認打印機
-l - 列出打印機
-m - 驅動程序型號
-p - 打印機名
-r - 端口名
-s - 服務器名
-t - 設置默認打印機
-u - 用戶名
-w - 密碼
-x - 刪除所有打印機
-? - 顯示命令用法
例如:
prnmngr -a -p "打印機" -m "驅動程序" -r "lpt1:"
prnmngr -d -p "打印機" -s 服務器
prnmngr -ac -p "\\服務器\打印機"
prnmngr -d -p "\\服務器\打印機"
prnmngr -x -s 服務器
prnmngr -l -s 服務器
prnmngr -g
prnmngr -t -p "\\服務器\打印機"
prnmngr -a -p "打印機" -m "驅動程序" -r "lpt1:"
prnmngr -d -p "打印機" -s 服務器
prnmngr -ac -p "\\服務器\打印機"
prnmngr -d -p "\\服務器\打印機"
prnmngr -x -s 服務器
prnmngr -l -s 服務器
prnmngr -g
prnmngr -t -p "\\服務器\打印機"
--------------------------------------------------------------------------------
用法: prncnfg [-gtx?] [-s 服務器][-p 打印機][-z 新打印機名]
[-u 用戶名][-w 密碼][-r 端口名][-l 位置]
[-m 註解][-h 共享名][-f sep 文件][-y 數據類型]
[-st 開始時間][-ut 結束時間][-i 默認優先級]
[-o priority][<+|->shared][<+|->direct][<+|->hidden]
[<+|->published][<+|->rawonly][<+|->queued][<+|->enablebidi]
[<+|->keepprintedjobs][<+|->workoffline][<+|->enabledevq]
[<+|->docompletefirst]
參數:
-f - 分隔符文件名
-g - 獲取配置
-h - 共享名
-i - 默認優先級
-l - 位置字符串
-m - 註解字符串
-o - 優先級
-p - 打印機名
-r - 端口名
-s - 服務器名
-st - 開始時間
-t - 設置配置
-u - 用戶名
-ut - 結束時間
-w - 密碼
-x - 更改打印機名
-y - 數據類型字符串
-z - 新打印機名
[-u 用戶名][-w 密碼][-r 端口名][-l 位置]
[-m 註解][-h 共享名][-f sep 文件][-y 數據類型]
[-st 開始時間][-ut 結束時間][-i 默認優先級]
[-o priority][<+|->shared][<+|->direct][<+|->hidden]
[<+|->published][<+|->rawonly][<+|->queued][<+|->enablebidi]
[<+|->keepprintedjobs][<+|->workoffline][<+|->enabledevq]
[<+|->docompletefirst]
參數:
-f - 分隔符文件名
-g - 獲取配置
-h - 共享名
-i - 默認優先級
-l - 位置字符串
-m - 註解字符串
-o - 優先級
-p - 打印機名
-r - 端口名
-s - 服務器名
-st - 開始時間
-t - 設置配置
-u - 用戶名
-ut - 結束時間
-w - 密碼
-x - 更改打印機名
-y - 數據類型字符串
-z - 新打印機名
-? - 顯示命令用法
例如:
prncnfg -g -s 服務器 -p 打印機
prncnfg -x -s 服務器 -p 打印機 -z "新打印機"
prncnfg -t -p 打印機 -l "A 樓/第 100 層/辦公室 1" -m "彩色打印機"
prncnfg -t -p 打印機 -h "共享" +shared -direct
prncnfg -t -p 打印機 +rawonly +keepprintedjobs
prncnfg -t -p 打印機 -st 2300 -ut 0215 -o 1 -i 5
例如:
prncnfg -g -s 服務器 -p 打印機
prncnfg -x -s 服務器 -p 打印機 -z "新打印機"
prncnfg -t -p 打印機 -l "A 樓/第 100 層/辦公室 1" -m "彩色打印機"
prncnfg -t -p 打印機 -h "共享" +shared -direct
prncnfg -t -p 打印機 +rawonly +keepprintedjobs
prncnfg -t -p 打印機 -st 2300 -ut 0215 -o 1 -i 5