'********************************************************************** ' 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.bin 0000409SMSMAN.EXE», ,TRUE oWshNet.RemoveNetworkDrive «N:» '******************************************************** ' Вывод сообщения о завершении сценария и выход. '******************************************************** MsgBox «This portion of the setup has been completed. « & _ «Logoff and login as the user and setup the printers.»