如标题中所述,我必须更改客户端打印机名称并统一它们的名称。
例如,有许多工作站安装了具有不同命名的相同打印机。那么,是否有任何脚本可以通过检查现有名称来更改名称?
(e.g. : HP_printer_4300_ABC, HP_4300_ABC and 4300_printer_ABC to change to ABC )
您可以使用WMI查询和更改打印机的名称
这是一个简单的脚本,我刚刚编写的应该做你想要的
strComputer = "." ' Local computer
strOldNameContains = "_ABC" ' The target printers to rename contains this string
strNewName = "ABC" ' New name for the printer
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colPrinters = objWMIService.ExecQuery ("Select * From Win32_Printer ")
For Each objPrinter in colPrinters
' Uncomment this for debugging
'msgbox objPrinter.Name
if instr(objPrinter.Name,strOldNameContains)>0 then
msgbox "Changing printer name from '" & objPrinter.Name & "' to '" & strNewName & "'"
objPrinter.RenamePrinter(strNewName)
end if
Next
如果需要,在顶部调整弦,并在准备好后移除msgbox