В наших лабораториях установлено несколько принтеров. У нас есть специальная учетная запись для тестирования в AD, которая не может печатать в комнате, в которой проводятся тесты, для защиты личной информации.
Мне нужен сценарий входа в систему, который установит другой принтер в качестве принтера по умолчанию в зависимости от того, входит ли этот пользователь в систему.
Это то, что у нас есть теперь, чтобы установить принтер по умолчанию для OU. Я хочу добавить в конце строку для пользователя.
Set objSysInfo = CreateObject("ADSystemInfo")
strName = objSysInfo.ComputerName
arrComputerName = Split(strName, ",")
arrOU = Split(arrComputerName(1), "=")
strComputerOU = arrOU(1)
Set objNetwork = CreateObject("WScript.Network")
Select Case strComputerOU
Case "OU for Printer 1"
objNetwork.SetDefaultPrinter "Printer 1"
Case "OU for Printer 2"
objNetwork.SetDefaultPrinter "Printer 2"
Case "OU for Printer 3"
objNetwork.SetDefaultPrinter "Printer 3"
Case "LabColorPrinter"
objNetwork.SetDefaultPrinter "Color Printer"
Case Else
objNetwork.SetDefaultPrinter "Printer 1"
End Select
Следующее должно удовлетворять вашим требованиям, хотя тестовая учетная запись все равно может изменить принтер.
Set objSysInfo = CreateObject("ADSystemInfo")
strName = objSysInfo.ComputerName
arrComputerName = Split(strName, ",")
arrOU = Split(arrComputerName(1), "=")
strComputerOU = arrOU(1)
Set objNetwork = CreateObject("WScript.Network")
If objNetwork.UserName = "TestUsername" Then
objNetwork.SetDefaultPrinter "Printer X"
Else
Select Case strComputerOU
Case "OU for Printer 1"
objNetwork.SetDefaultPrinter "Printer 1"
Case "OU for Printer 2"
objNetwork.SetDefaultPrinter "Printer 2"
Case "OU for Printer 3"
objNetwork.SetDefaultPrinter "Printer 3"
Case "LabColorPrinter"
objNetwork.SetDefaultPrinter "Color Printer"
Case Else
objNetwork.SetDefaultPrinter "Printer 1"
End Select
End If