Mr.Cherajek
Members
-
Joined
-
Last visited
Reputation Activity
-
Mr.Cherajek reacted to NIM in Find old computers in the stated OUOn error resume next
Dim objADO
Dim objContainer
Dim objChild
Dim User
Wscript.Echo "The output will be written to C:\oldComputers.txt"
set objADO = GetObject("LDAP://ou=workstations,ou=liverpool,dc=contoso,dc=local")
set WshShell = WScript.CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFile ("C:\oldComputers.txt")
set txtStream = fso.OpenTextFile("C:\oldComputers.txt", 8, True)
txtStream.WriteLine vbCrLf
set objContainer = objADO
For each objChild in objContainer
user = MID(objChild.Name,4)
If DateDiff ("d",objChild.LastLogin, Now) > 180 then txtStream.WriteLine user & " ---> " & DateDiff ("d",objChild.LastLogin, Now)_
& " Days since last login." & vbCrLf
Next
msgbox "Done..."
WshShell.run "C:\oldComputers.txt"
PLEASE MAKE SURE NO WORD WRAPPING IS HAPPENING IN YOUR SCRIPT!!!
To make this script work you will need one thing!
You will need the OU in which your computer accounts are kept.
Edit the string LDAP://
(e.g., 'LDAP://OU=workstations,OU=boston,DC=contoso,DC=com')
The script will be written to the root of the c:\ drive.
*Make sure you are an administrator to run this.