Hi, I am having trouble with my script reading a file and putting it in a variable. I trying to query multiple child domains and it will fail on the bolded parts. Can someone help.
Const ForWriting = 2
Const ForAppending = 8
Set Objfso = CreateObject("Scripting.FileSystemObject")
Set objInputFile = objfso.OpenTextFile("Domains.txt", 1, True)
Set objOutputFile = objfso.CreateTextFile("ChildDCUsers.txt")
set objFolder = nothing
set objOutputFile = nothing
Set objDomain = nothing
Set objTextFile = objFSO.OpenTextFile ("ChildDCUsers.txt", forWriting)
strText0 = "Employee Number,Name,First Name,Last Name,Title,Email,Location,User ID"
objTextFile.WriteLine(strText0)
objTextFile.Close
Do While objInputFile.AtEndOfLine <> True ' Comment out this line for a single server
strDomain = objInputFile.ReadLine
Set objRoot = GetObject("LDAP://RootDSE")
Set objDomain = GetObject("LDAP://dc="& strDomain &",dc=ci,dc=org") Call enummembers(objDomain)
Sub enumMembers(objDomain) For Each objMember In objDomain
If ObjMember.Class = "user" Then
If Not (isempty(ObjMember.samAccountName)) Then SamAccountName = ObjMember.samAccountName else SamAccountName = "" End If
If Not (isempty(ObjMember.CN)) Then Cn = ObjMember.CN else Cn = "" End If
If Not (isempty(objMember.GivenName)) Then FirstName = objMember.GivenName else FirstName = "" End If
If Not (isempty(objMember.sn)) Then Lastname = ObjMember.sn else LastName = "" End If
If Not (isempty(objMember.C)) Then C = objMember.C else Country = "" End If
If Not (isempty(objMember.Mail)) Then Mail = objMember.Mail else Email = "" End If
If Not (isempty(ObjMember.description)) Then description = ObjMember.description else description = "" End If
set objFolder = nothing
set objFile = nothing
Set objTextFile = objFSO.OpenTextFile ("ChildDCUsers.txt", ForAppending, True)
strText1 = Mail & "," & CN & "," & FirstName & "," & LastName & "," & Description & "," & Mail & "," & C & "," & SamAccountName
objTextFile.WriteLine(strText1)
objTextFile.Close
Mail = ""
samAccountName = ""
GivenName = ""
sn = ""
C = ""
description = ""
End If
If objMember.Class = "organizationalUnit" or OBjMember.Class = "container" Then
enumMembers (objMember)
End If
Loop
Next
End Sub