是否有用于检查现有打印机名称并重命名的脚本?

问题描述 投票:-1回答:1

如标题中所述,我必须更改客户端打印机名称并统一它们的名称。

例如,有许多工作站安装了具有不同命名的相同打印机。那么,是否有任何脚本可以通过检查现有名称来更改名称?

(e.g. : HP_printer_4300_ABC, HP_4300_ABC and 4300_printer_ABC to change to ABC )

vbscript
1个回答
0
投票

您可以使用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

© www.soinside.com 2019 - 2024. All rights reserved.