如何使用ADSI和WSH脚本查找域中FSMO角色持有者
来源:互联网 发布:卡密软件刷q币软件下载 编辑:程序博客网 时间:2024/05/02 02:04
要使用此脚本文件,将下列代码存为Find_FSMO.vbs文件
下列代码使用vbs脚本:
Option ExplicitDim WSHNetwork, objArgs, ADOconnObj, bstrADOQueryString, RootDom, RSObjDim FSMOobj,CompNTDS, Computer, Path, HelpTextSet WSHNetwork = CreateObject("WScript.Network")Set objArgs = WScript.ArgumentsHelpText = "This script will find the FSMO role owners for your domain." & Chr(13) &_ Chr(10) & "The syntax is as follows:" & Chr(13) & Chr(10) &_ "find_fsmo DC=MYDOM,DC=COM" & Chr(13) & Chr(10) &_ """Where MYDOM.COM is your domain name.""" & Chr(13) & Chr(10) & "OR:" &_ Chr(13) & Chr(10) & "find_fsmo MYDCNAME " & Chr(13) & Chr(10) &_ """Where MYDCNAME is the name of a Windows 2000 Domain Controller"""Select Case objArgs.Count Case 0 Path = InputBox("Enter your DC name or the DN for your domain"&_ " 'DC=MYDOM,DC=COM':","Enter path",WSHNetwork.ComputerName) Case 1 Select Case UCase(objArgs(0)) Case "?" WScript.Echo HelpText WScript.Quit Case "/?" WScript.Echo HelpText WScript.Quit Case "HELP" WScript.Echo HelpText WScript.Quit Case Else Path = objArgs(0) End Select Case Else WScript.Echo HelpText WScript.QuitEnd SelectSet ADOconnObj = CreateObject("ADODB.Connection")ADOconnObj.Provider = "ADSDSOObject"ADOconnObj.Open "ADs Provider"'PDC FSMObstrADOQueryString = "<LDAP://"&Path&">;(&(objectClass=domainDNS)(fSMORoleOwner=*));adspath;subtree"Set RootDom = GetObject("LDAP://RootDSE")Set RSObj = ADOconnObj.Execute(bstrADOQueryString)Set FSMOobj = GetObject(RSObj.Fields(0).Value)Set CompNTDS = GetObject("LDAP://" & FSMOobj.fSMORoleOwner)Set Computer = GetObject(CompNTDS.Parent)WScript.Echo "The PDC FSMO is: " & Computer.dnsHostName'Rid FSMObstrADOQueryString = "<LDAP://"&Path&">;(&(objectClass=rIDManager)(fSMORoleOwner=*));adspath;subtree"Set RSObj = ADOconnObj.Execute(bstrADOQueryString)Set FSMOobj = GetObject(RSObj.Fields(0).Value)Set CompNTDS = GetObject("LDAP://" & FSMOobj.fSMORoleOwner)Set Computer = GetObject(CompNTDS.Parent)WScript.Echo "The RID FSMO is: " & Computer.dnsHostName'Infrastructure FSMObstrADOQueryString = "<LDAP://"&Path&">;(&(objectClass=infrastructureUpdate)(fSMORoleOwner=*));adspath;subtree"Set RSObj = ADOconnObj.Execute(bstrADOQueryString)Set FSMOobj = GetObject(RSObj.Fields(0).Value)Set CompNTDS = GetObject("LDAP://" & FSMOobj.fSMORoleOwner)Set Computer = GetObject(CompNTDS.Parent)WScript.Echo "The Infrastructure FSMO is: " & Computer.dnsHostName'Schema FSMObstrADOQueryString = "<LDAP://"&RootDom.Get("schemaNamingContext")&_ ">;(&(objectClass=dMD)(fSMORoleOwner=*));adspath;subtree"Set RSObj = ADOconnObj.Execute(bstrADOQueryString)Set FSMOobj = GetObject(RSObj.Fields(0).Value)Set CompNTDS = GetObject("LDAP://" & FSMOobj.fSMORoleOwner)Set Computer = GetObject(CompNTDS.Parent)WScript.Echo "The Schema FSMO is: " & Computer.dnsHostName'Domain Naming FSMObstrADOQueryString = "<LDAP://"&RootDom.Get("configurationNamingContext")&_ ">;(&(objectClass=crossRefContainer)(fSMORoleOwner=*));adspath;subtree"Set RSObj = ADOconnObj.Execute(bstrADOQueryString)Set FSMOobj = GetObject(RSObj.Fields(0).Value)Set CompNTDS = GetObject("LDAP://" & FSMOobj.fSMORoleOwner)Set Computer = GetObject(CompNTDS.Parent)WScript.Echo "The Domain Naming FSMO is: " & Computer.dnsHostName
- 如何使用ADSI和WSH脚本查找域中FSMO角色持有者
- 如何使用ADSI和WSH脚本查找域中FSMO角色持有者
- 详解FSMO的五种角色和FSMO角色辨别方法及角色转换方法
- FSMO五种角色的作用、查找及规划
- 转贴:FSMO五种角色的作用、查找及规划
- [ZT]FSMO五种角色的作用、查找及规划
- FSMO五种角色的作用、查找及规划
- 在图形用户介面中查看和转移 FSMO 角色
- 域中DC的规划FSMO的原则
- 查看、转移、夺取FSMO角色
- Windows域 FSMO角色介绍
- 什么是 WSH:脚本宿主
- 跟我从头学WSH(5)--理解ADSI
- 使用 Ntdsutil.exe 捕获 FSMO 角色或将其转移到域控制器
- 使用 Ntdsutil.exe 捕获 FSMO 角色或将其转移到域控制器
- [AD]使用Ntdsutil.exe获取FSMO角色或将其转移到域控制器
- HOW TO:在图形用户介面中查看和转移 FSMO 角色
- Windows 2000 Active Directory FSMO角色
- Linux 中的计时
- Linux 下批量计时中的问题
- 在Windows 2000域控制器上放置和优化FSMO
- 如何查找FSMO角色担任者(服务器)
- 将Windows 2000 DNS集成到现有的BIND或基于Windows NT 4.0的DNS命名空间中
- 如何使用ADSI和WSH脚本查找域中FSMO角色持有者
- 数字转换成英文大写的SQL函数
- [CnReport] 最近想自己改改ChinaReport
- DatePicker 控件(翻译)
- 求两字符串的最长公有串 —— 我的“平移算法”
- 【程序16】
- 北京一日行之十三——科技馆、电信馆
- PB中二进制文件读取问题(原创)
- 【程序17】