'**********************************************************************
' TITLE: FinalSetup.VBS Ver 2.0
' Применение: после присоединения компьютера к домену данный сценарий
' вводит глобальные группы домена в локальные группы (WIN 2000 Image).
'**********************************************************************
OPTION EXPLICIT 'Определение переменных.
ON ERROR RESUME NEXT 'При обнаружении ошибки сценарий продолжает работу.
'***************************************************
'Определение переменных.
'***************************************************
Dim oGroup 'Объект ADSI, созданный функцией GetObject
Dim oWshShell 'Объект Shell для запуска выполняемого файла (smsman.exe)
Dim sInDomain 'Используется для проверки членства в домене
Dim sCompName 'Локальное имя компьютера
Dim oWshNet 'Объект WshNetwork
Dim sUser 'Имя пользователя для поиска ошибок
Dim sMember 'Проверка членства в группах 0 or 1
'********************************************************
' Определение констант.
'********************************************************
Const GLOBAL_GROUP = «WEBDEV» 'Глобальная группа вводится в 
Const LOCAL_GROUP = «Administrators» 'Имя локальной группы
Const DOMAIN = «GONDOR» 'Имя домена
'********************************************************
' Создание объектов.
'********************************************************
' Создание объекта Network.
Set oWshNet = Wscript.CreateObject(«Wscript.Network»)
' Создание объекта Shell.
Set oWshShell = Wscript.CreateObject(«Wscript.Shell»)
'***************************************************
' Сбор локальной информации.
'***************************************************
sUser = oWshNet.Username 'Сохранить входное имя текущего пользователя.
SCompName = oWshNet.Computername 'Сохранить имя компьютера.
'***************************************************
'Убедиться, что был зарегистрирован Administrator; в противном случае 
'прекратить выполнение сценария.
'***************************************************
IF UCASE(sUser) <> «ADMINISTRATOR» THEN
 Wscript.Echo «You must be logged in as «»ADMINISTRATOR»» to run this « & _
 «script! « & vbCRLF & vbCRLF & «Log off and login as « & _
 «»»ADMINISTRATOR»» to the local machine « & «(« & sCompName & «).» & _
 vbCRLF & vbCRLF & «After logging in as ADMINISTRATOR, run the « & _
 «C:WINNTSYSTEM32FinalSetup.vbs script again» & _
 « to finish the installation.»
 Wscript.Quit
END IF
'***************************************************
'Проверить, что машина принадлежит к домену;
'в противном случае прекратить выполнение сценария и вывести сообщение.
'***************************************************
'Прочитать значение из реестра.
sInDomain = oWshShell.RegRead(«HKLMSOFTWARE» & _
 «MicrosoftWindows NTCurrentVersionWinlogonDomainCacheGONDOR»)
IF sInDomain = «» THEN
 Wscript.Echo «The Computer does not belong to « & DOMAIN & « domain!»
 Wscript.quit
END IF
IF ERR.NUMBER = -2147024894 THEN
 Wscript.Echo «The Computer does not belong to « & DOMAIN & « domain!»
 Wscript.quit
END IF
'********************************************************
'Изменить членство в группе.
'********************************************************
Set oGroup = GetObject(«WinNT://» & sCompName & «/» & LOCAL_GROUP & «,group»)
sMember = oGroup.IsMember(«WinNT://» & DOMAIN & «/» & GLOBAL_GROUP) 'Если будет 
 'возвращен член, -1. Если нет, 0.
IF sMember = 0 THEN
 oGroup.add(«WinNT://» & DOMAIN & «/» & GLOBAL_GROUP)
 sMember = oGroup.IsMember(«WinNT://» & DOMAIN & «/» & GLOBAL_GROUP)
 'Если будет возвращен член, -1. Если нет, 0.
 IF sMember = -1 THEN
 oWshShell.Popup «The « & GLOBAL_GROUP & « global group has been « & _
 «successfully added to the « & LOCAL_GROUP & « local group.», & _
 5, «Local Group Modified», 064
 End IF
ELSE
 oWshShell.Popup «The « & GLOBAL_GROUP & « global group is already» & _
 « a member of the « & LOCAL_GROUP & « local group.», 5, & _
 «Global Group Exists» ,064
End IF
'********************************************************
' Запустить smsman.exe, чтобы инсталлировать SMS 2.0.
'********************************************************
oWshShell.Popup «SMS 2.0 will now be installed. Please wait while» & _
 « program is loading...» & vbCRLF & vbCRLF & «The SMS Client» & _
 « Installation will take approximately 5 minutes to complete» & _
 , 10, «SMS 2.0 Installation», 064
oWshNet.MapNetworkDrive «N:», «SMSCPS1SMSLOGON», , «guest», «»
oWshShell.Run «N:x86.bin0000409SMSMAN.EXE», ,TRUE
oWshNet.RemoveNetworkDrive «N:»
'********************************************************
' Вывод сообщения о завершении сценария и выход. 
'********************************************************
MsgBox «This portion of the setup has been completed. « & _
 «Logoff and login as the user and setup the printers.»