Автор: Pser
Дата сообщения: 05.07.2006 19:03
Столкнулся с необходимостью переименование всех машин в домене. Нашел несколько способовю
1. с помощью netdom (минус в том что если на компе откл. служба файл анд шеринг, то нетдом не срабатывает)
2. скрипт
'strComputer = "OldName"
'Set objWMIService = GetObject("winmgmts:" _
' & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
'Set colComputers = objWMIService.ExecQuery _
' ("Select * from Win32_ComputerSystem")
'For Each objComputer In colComputers
' Err = objComputer.Rename("NewName")
все отлично, но этот скрипт надо запускать на самой машне с правами администратора, это не подходит, т.к цель переименование удаленно.
3. Этот скрипт считаю самым переспективным
'strComputer = "OldName"
'strDomain = "domain"
'strUser = "user"
'strPassword = "pass"
'Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator")
'Set objSWbemServices = objSWbemLocator.ConnectServer'(strComputer,"root\cimv2",strUser,strPassword,"MS_409","ntlmdomain:" & strDomain)
'Set colSwbemObjectSet = _
objSWbemServices.ExecQuery("Select * From Win32_Process")
'For Each objProcess in colSWbemObjectSet
' Err = objProcess.Rename("NewName")
'Next
скрипт должен создавать соединение с удаленной машиной, но у меня выдает инвалид параметр на строке '
'Set objSWbemServices = objSWbemLocator.ConnectServer(strComputer,"root\cimv2",strUser,strPassword,"MS_409","ntlmdomain:" & strDomain)
Если кто сталкивался с такой проблемой, помогите плиз