我有来自ScriptIT人员的这段代码。
Set objSysInfo = CreateObject("ADSystemInfo")
strComputer = objSysInfo.ComputerName
Set objComputer = GetObject("LDAP://" & strComputer)
arrOUs = Split(objComputer.Parent, ",")
arrMainOU = Split(arrOUs(0), "=")
wscript.echo arrMainOU(1)
我遇到的问题是arrMainOU(1)两次回应OU。我尝试设置一个简单的测试,但它失败了。我在这里或谷歌上都没有看到这个问题。
If arrMainOU(1) = "myOU" Then
wcript.echo "true"
End If
我需要将arrMainOU(1)中的1个值与包含OU字符串的数组进行比较。我需要一个case语句,根据它的OU1或OU2等来执行操作。
我在评估arrMainOU(1)时遇到了困难。如果我将值输出到文件,那么它只写一个值。
任何帮助将不胜感激 - 谢谢
答案 0 :(得分:0)
尝试使用此代码段来了解'SPLIT'功能:
Set objSysInfo = CreateObject("ADSystemInfo")
strComputer = objSysInfo.ComputerName
Set objComputer = GetObject("LDAP://" & strComputer)
arrOUs = Split(objComputer.Parent, ",")
retstring = ""
For ii = LBound( arrOUs) To UBound( arrOUs)
arrMainOU = Split(arrOUs(ii), "=")
For jj = LBound( arrMainOU) To UBound( arrMainOU)
retstring = retstring & "arrOUs(" & CSTR( ii) & ") = " & arrOUs(ii) & vbTab
retstring = retstring & "arrMainOU(" & CSTR( jj) & ") = " & arrMainOU(jj) & vbNewLine
Next
retstring = retstring & vbNewLine
Next
Wscript.Echo retstring