Dim WshShell
Dim WshNetwork
Dim oCommand
Dim oConnection
Dim oRS
Dim aArray
Dim i
Dim strSN
Dim strGN
Const ADS_RIGHT_DS_CREATE_CHILD = &H1
Const ADS_RIGHT_DS_DELETE_CHILD = &H2
Const ADS_RIGHT_ACTRL_DS_LIST = &H4
Const ADS_RIGHT_DS_SELF = &H8
Const ADS_RIGHT_DS_READ_PROP = &H10
Const ADS_RIGHT_DS_WRITE_PROP = &H20
Const ADS_RIGHT_DS_DELETE_TREE = &H40
Const ADS_RIGHT_DS_LIST_OBJECT = &H80
Const ADS_RIGHT_DS_CONTROL_ACCESS = &H100
Const ADS_RIGHT_DELETE = &H10000
Const ADS_RIGHT_READ_CONTROL = &H20000
Const ADS_RIGHT_WRITE_DAC = &H40000
Const ADS_RIGHT_WRITE_OWNER = &H80000
Const ADS_RIGHT_SYNCHRONIZE = &H100000
Const ADS_RIGHT_ACCESS_SYSTEM_SECURITY = &H1000000
Const ADS_RIGHT_GENERIC_ALL = &H10000000
Const ADS_RIGHT_GENERIC_EXECUTE = &H20000000
Const ADS_RIGHT_GENERIC_WRITE = &H40000000
Const ADS_RIGHT_GENERIC_READ = &H80000000
strInputfile = "d:\braupdateusers.txt"
Set FSO = CreateObject("Scripting.FileSystemObject"

Set objTextStream1 = FSO.OpenTextFile(strInputfile, 1, False)
Set WshShell = WScript.CreateObject("WScript.Shell"

Set WshNetwork = WScript.CreateObject("WScript.Network"

Set oCommand = CreateObject("ADODB.Command"

Set dicUsers = Wscript.CreateObject("Scripting.Dictionary"
Do While Not objTextStream1.AtEndOfStream
sLine = LCase(Trim(objTextStream1.ReadLine))
If sLine <> "" Then
If Not dicUsers.Exists(sLine) Then
dicUsers.Add sLine, "1"
End If
End If
Loop
objTextStream1.Close
Set objTextStream1 = Nothing
'################################################################
'##### GET A RECORDSET BACK FROM ACTIVE DIRECTORY OF THE DNSNODES
'#setup ADODB Command Object, setup ADODB Connection object ####
'################################################################
Set oConnection = CreateObject("ADODB.Connection"

'#
oConnection.Provider = "ADsDSOObject" '#
oConnection.Open = "Active Directory Provider" '#
oCommand.ActiveConnection = oConnection '#then Create a connection.
Set oRoot = GetObject("LDAP://RootDSE"

'#
oCommand.Properties("Page Size"

= 999
sdnsDomain = "dc=blaa,dc=net"
sQuery = "SELECT scriptPath, sAMAccountName, userAccountControl FROM 'LDAP://ou=Users,ou=UK-Dunkirk,DC=blaa,DC=net' WHERE objectClass = 'person' AND sAMAccountName='bra*'"
oCommand.commandtext = sQuery 'set the command text
oCommand.Properties("Page Size"

= 999 'set the page size to allow for more than a 1000 records
Set oRs = oCommand.execute
While Not oRS.EOF
If Right(CStr(oRS.Fields("sAMAccountName"

), 1) <> "$" AND oRS.Fields("userAccountControl"

<> "514" AND oRS.Fields("userAccountControl"

<> "66050" Then
If dicUsers.Exists(LCase(CStr(oRS.Fields("sAMAccountName"

))) Then
'msgbox "have found " & CStr(oRS.Fields("sAMAccountName"

)
If IsNull(oRS.Fields("scriptPath"

) Then
Call updateScriptPAth(lcase(oRS.Fields("sAMAccountName"

))
Else
If Trim(LCase(CStr(oRS.Fields("scriptPath"

))) <> "fsc\loginloader.bat" Then
Call updateScriptPAth(lcase(oRS.Fields("sAMAccountName"

))
End If
End If
End If
End If
oRS.MoveNext
Wend
Set oRS = Nothing
Set oConnection = Nothing
Set oCommand = Nothing
Set WshNetwork = Nothing
Set WshShell = Nothing
Wscript.Quit
Sub updateScriptPath(strSAMName)
Set User = GetObject("WinNT://DOMFSC01/" & strSAMName & ",user"

User.LoginScript = "fsc\loginloader.bat"
User.SetInfo
Set User = Nothing
End Sub