VBS脚本增删客户端打印机

场景:

1、客户端需要自动安装某台新共享服务器上的打印机

2、并且删除以前安装的老的共享服务器上的打印机,删除残留的其他网路打印机

脚本如下:

添加打印机

'addPrinter 
'直接修改第二行的打印机共享名称即可  
'可以添加多条第二行,以增加多个打印机
Set WshNetwork = Wscript.CreateObject("Wscript.Network") 
WshNetwork.addWindowsPrinterConnection \\172.20.6.6\10F-cw-M451dn

删除打印机

'deletePrinter 
'用于打印机服务器迁移之后客户端打印机指向修改  
'判断当前用户安装的打印机,如果是6.7的新打印机,则保留  
'如果是以前6.6的旧打印机,则删除  
'删除其他的网络打印机
strComputer = "." 
Set objWMIService = GetObject("winmgmts:" _  
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")  
Set colInstalledPrinters = objWMIService.ExecQuery("Select * from Win32_Printer")  
For Each objPrinter in colInstalledPrinters  
    if objPrinter.ServerName = "\\172.20.6.7" then  
    Elseif objPrinter.ServerName = "\\172.20.6.6" then  
    objPrinter.Delete_  
    Elseif objPrinter.Network = true then  
            objPrinter.Delete_  
    end if  
Next

GPO一推~皆大欢喜

PS:还有setDefaultPrinter方法,根据部门位置排好几个OU,分别写好默认打印机名字

一下发,不同座位使用不同默认打印机的问题也解决了。

你可能感兴趣的:(VBS脚本增删客户端打印机)