' Kod zmienia nazw komputera w jego domenie i w nim samym.
' Skrypt mona uruchomi wycznie na komputerach z systemami Windows XP i Windows Server 2003.
' ------ KONFIGURACJA SKRYPTU ------
strComputer     = "<NazwaKomputera>"       ' np. joe-xp
strNewComputer  = "<NowaNazwaKomputera>"    ' np. joe-pc
strDomainUser   = "<NazwaUPNKontaDomenowegoUytkownika>"    ' np. administrator@rallencorp.com
strDomainPasswd = "<HasoDomenowegoUytkownika>"
strLocalUser    = "<KontoAdministratoraKomputera>"  ' np. joe-xp\administrator
strLocalPasswd  = "<HasoAdministratoraKomputera>"
' ------ KONIEC KONFIGURACJI ---------
' Poczenie z komputerem
set objWMILocator = CreateObject("WbemScripting.SWbemLocator")
objWMILocator.Security_.AuthenticationLevel = 6
set objWMIComp = objWMILocator.ConnectServer(strComputer, _
                                             "root\cimv2", _
                                             strLocalUser, _
                                             strLocalPasswd)
set objWMICompSys = objWMIComp.Get("Win32_ComputerSystem.Name='" & _
                                   strComputer & "'")
' Zmiana nazwy komputera
intRC = objWMICompSys.Rename(strNewComputer, _
                             strDomainPasswd, _
                             strDomainUser)
if intRC <> 0 then
    WScript.Echo "Zmiana nazwy zakoczya si wygenerowaniem bdu: " & intRC
else
    WScript.Echo "Nazwa komputera " & strComputer & " zostaa pomylnie zmieniona na " & strNewComputer
end if

WScript.Echo "Ponowne uruchamianie systemu..."
set colOS = objWMIComp.InstancesOf("Win32_OperatingSystem")
for each objOS in colOS
   objOS.Reboot()
next
