Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Автоматизация администрирования. Часть 2

Модерирует : lynx, Crash_Master, dg, emx, ShriEkeR

ShriEkeR (23-05-2011 23:06): Автоматизация администрирования. Часть 3  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

alecsandrb

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Option Explicit  
Dim WshNetwork, objSysInfo, strComputerDN, objComputer, strUserDN, objUser  
Dim myArray, Path, rec, DepartmentPath, OUCompPath, DescriptionStr
Dim  objWMIService, colSoftware, WshShell, StrCmds, RetVal
 
On Error Resume Next
 
'Определяем имя компьютера  
Set objSysInfo = CreateObject("ADSystemInfo")
strComputerDN = objSysInfo.computerName
Set objComputer = GetObject("LDAP://" & strComputerDN)
 
'Определяем имя пользователя
Set WshNetwork = CreateObject("WScript.Network")
strUserDN = objSysInfo.userName
Set objUser = GetObject("LDAP://" & strUserDN)
 
' Получаем информацию об OU пользователя  
' общая информация включая полный перечень всех OU
' в общем случаем для меня это: cn=Ivan Ivanov,OU=IT,OU=USERS,OU=KOR,OU=CEM,DC=RR,DC=TT,DC=NNNNNN,DC=MMM
myArray = Split(strUserDN, ",")  
Path = ""  
For Each rec In myArray  
        If Left(rec, 3) = "OU=" Then  
                Path = Mid(rec, 4) + Path  
        End If  
Next
' В примере Path="CEMKORUSERSIT"
DepartmentPath = Mid(Path, 12)
' Результат DepartmentPath="IT"
 
' Получаем информацию об OU компьютера
' У меня разнесены учетки ПК, ноутбуков и серверов по разным OU
' и у меня у ПК для примера будет: cn=PCVASYA,OU=Workstation,OU=KOR,OU=CEM,DC=RR,DC=TT,DC=NNNNNN,DC=MMM
myArray = Split(strComputerDN, ",")  
Path = ""  
For Each rec In myArray  
        If Left(rec, 3) = "OU=" Then  
                Path = Mid(rec, 4) + Path  
        End If  
Next
' В примере Path="CEMKORWorkstation"
OUCompPath = Mid(Path, 7)
' Результат OUCompPath="Workstation"
 
' Полное описание будет следующего вида:
' Workstation IT Ivanov Ivan Last Logon 1 июня 8:00:00
DescriptionStr = OUCompPath & " " & DepartmentPath &  " " & objUser.sn & " " & objUser.givenName &" Last logon - "& Now
 
' запись полученной строки в описание компьютера в AD
objComputer.Put "Description" , DescriptionStr
objComputer.SetInfo
 
' Далее эту строку запишем в описание ПК на самом компьютере
' Останавливаем службу Сервер и зависящие от нее служюы
Set objWMIService = GetObject("winmgmts:"  & "{impersonationLevel=impersonate}!\\.\root\cimv2")
Set colServiceList = objWMIService.ExecQuery("Associators of "  & "{Win32_Service.Name='LANMANSERVER'} Where "  & "AssocClass=Win32_DependentService " & "Role=Antecedent" )
For Each objService in colServiceList
    objService.StopService()
Next
Wscript.Sleep 20000
Set colServiceList = objWMIService.ExecQuery ("Select * from Win32_Service where Name='LANMANSERVER'")
For Each objService in colServiceList
    errReturn = objService.StopService()
Next
 
' Внесение данных о пользователе в свойcтва компьютера
Set WshShell = Wscript.CreateObject("WScript.Shell")
Set WshNetwork = CreateObject("WScript.Network")
WshShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters\srvcomment",  DescriptionStr
 
' Запускаем службу Сервер и зависящие от нее служюы
Set objWMIService = GetObject("winmgmts:"  & "{impersonationLevel=impersonate}!\\.\root\cimv2")
Set colServiceList = objWMIService.ExecQuery ("Select * from Win32_Service where Name='LANMANSERVER'")
For each objService in colServiceList
    errReturn = objService.StartService()
Next
Wscript.Sleep 20000
Set colServiceList = objWMIService.ExecQuery("Associators of "  & "{Win32_Service.Name='LANMANSERVER'} Where " & "AssocClass=Win32_DependentService " & "Role=Dependent" )
For each objService in colServiceList
    objService.StartService()
Next
 

Всего записей: 36 | Зарегистр. 03-09-2003 | Отправлено: 07:35 09-07-2007
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Автоматизация администрирования. Часть 2
ShriEkeR (23-05-2011 23:06): Автоматизация администрирования. Часть 3


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru