Here is my work in progress, still got a bit to do. Two scripts, 1 to confirm user account migrated, other to confirm computer account migrated. Like to know if I can use @domain to verify a successfull migration... $sDomain and the logfile path need to be configured. Must still consolidate into single script. Have not included the forced loggoff yet.

Find User:

Code:
 
Dim $Con ;(As ADODB.Connection)
Dim $Cmd ;(As ADODB.Command)
Dim $Rs ;(As ADODB.Command)
Dim $Root
;RootDSE for Domain - cannot be dynamic because you not logged onto AD
Dim $sDomain
;Configure RootDSE
$sDomain = "DC=playtime,DC=playing,DC=com"
Dim $OU
Dim $Domain
Dim $sADsPath
Dim $sFilter
Dim $sAttribsToReturn
Dim $sDepth
Dim $strCount
Dim $UserLog
$UserLog = "\\host\INCOMING\MIGRATIONLOG.TXT"

$strName = @UserID
If $strName = ""
? "No username was specified. "
Exit
Else
? "Searching for User Account Name: " + $strName
EndIf

; Create ADO connection object for Active Directory
$Con = CreateObject("ADODB.Connection")
If (@Error <> 0)
? "Error Creating Connection Object"
Exit
Else
? "Successfully Created ADO Connection Object"
EndIf

$Con.Provider = "ADsDSOObject"
If (@Error <> 0)
? "Error Setting Active Directory Provider"
Exit
Else
? "Successfully Set Active Directory Provider"
EndIf

$Con.Open "Active Directory Provider"
If (@Error <> 0)
? "Error Opening Active Directory Provider"
Exit
Else
? "Successfully Opened Active Directory Provider"
EndIf

; Create ADO command object for the connection.
$Cmd = CreateObject("ADODB.Command")
If (@Error <> 0)
? "Error Creating ADO Command Object"
Exit
Else
? "Successfully Created ADO Command Object"
EndIf

$Cmd.ActiveConnection = $Con
If (@Error <> 0)
? "Error Assigning Connection"
Exit
Else
? "Succesfully Assigned Connection"
EndIf

;$OU = "OU=Tsogo Domain Users,OU=MTC"

$Domain = GetObject("LDAP://" + $sDomain)
If (@Error <> 0)
? "Error Connecting to Domain: " + $sDomain
Exit
Else
? "Succesfully Connected to Domain: " + $sDomain
EndIf

$sADsPath = "<" + $Domain.ADsPath + ">"
If (@Error <> 0)
? "Error setting ADsPath"
Exit
Else
? "Succesfully set ADsPath: " + $sADsPath
EndIf

;(objectCategory=computer)
; Build the filter element of the commandtext
If ($strName = "")
? "Error Nothing in Search String"
Exit
Else
;(&(objectCategory=computer)(|(name=leased*)(name=corp*)))
$sFilter = "(&(objectCategory=person)(objectClass=user)(sAMAccountName=" + $strName + "))"
? "Search String: " + $sFilter
EndIf

; Build the returned attributes element of the commandtext.
$sAttribsToReturn = "sAMAccountName"

; Build the depth element of the commandtext.
$sDepth = "subTree"

; Assemble the commandtext.
$Cmd.CommandText = $sADsPath + ";" + $sFilter + ";" + $sAttribsToReturn + ";" + $sDepth
If (@Error <> 0)
? "Error in Query Command Text"
Exit
Else
? "Successfull Query Command Text: " + $Cmd.CommandText
EndIf

; Execute the query.
$Rs = CreateObject("ADODB.Recordset")
If (@Error <> 0)
? "Error Creating Recordset Object"
Exit
Else
? "Successfully Created Recordset Object"
$Rs = $Cmd.Execute
EndIf

$strCount = $rs.RecordCount
If ($strCount > 0)
? "Found " + $strCount + " Accounts. User " + $strName + " Account has been migrated "
Sleep 2
If Open( 3 , $UserLog , 5 ) = 0

$x = WriteLine( 3 , "UserMigrated " + " " + @USERID + " " + @DATE + " " + @TIME + @CRLF)

Else

BEEP

? "failed to open file, error code : [" + @ERROR + "]"

EndIf
Else
? "Unable to find any username on AD for " + $strName
If Open( 3 , $UserLog , 5 ) = 0

$x = WriteLine( 3 , "UserNotMigrated " + " " + @USERID + " " + @DATE + " " + @TIME + @CRLF)

Else

BEEP

? "failed to open file, error code : [" + @ERROR + "]"

EndIf
Exit
EndIf



Find Computer:

Code:
  

Dim $Con ;(As ADODB.Connection)
Dim $Cmd ;(As ADODB.Command)
Dim $Rs ;(As ADODB.Command)
Dim $Root
;RootDSE for Domain - cannot be dynamic because you not logged onto AD
Dim $sDomain
;Configure RootDSE
$sDomain = "DC=playtime,DC=playing,DC=com"
Dim $OU
Dim $Domain
Dim $sADsPath
Dim $sFilter
Dim $sAttribsToReturn
Dim $sDepth
Dim $strCount
Dim $ComputerLog
$ComputerLog = "\\host\INCOMING\MIGRATIONLOG.TXT"

$strName = @WKSTA
If $strName = ""
? "No computer name was specified. "
Exit
Else
? "Searching for Computer Account Name: " + $strName
EndIf

; Create ADO connection object for Active Directory
$Con = CreateObject("ADODB.Connection")
If (@Error <> 0)
? "Error Creating Connection Object"
Exit
Else
? "Successfully Created ADO Connection Object"
EndIf

$Con.Provider = "ADsDSOObject"
If (@Error <> 0)
? "Error Setting Active Directory Provider"
Exit
Else
? "Successfully Set Active Directory Provider"
EndIf

$Con.Open "Active Directory Provider"
If (@Error <> 0)
? "Error Opening Active Directory Provider"
Exit
Else
? "Successfully Opened Active Directory Provider"
EndIf

; Create ADO command object for the connection.
$Cmd = CreateObject("ADODB.Command")
If (@Error <> 0)
? "Error Creating ADO Command Object"
Exit
Else
? "Successfully Created ADO Command Object"
EndIf

$Cmd.ActiveConnection = $Con
If (@Error <> 0)
? "Error Assigning Connection"
Exit
Else
? "Succesfully Assigned Connection"
EndIf

$Domain = GetObject("LDAP://" + $sDomain)
If (@Error <> 0)
? "Error Connecting to Domain: " + $sDomain
Exit
Else
? "Succesfully Connected to Domain: " + $sDomain
EndIf

$sADsPath = "<" + $Domain.ADsPath + ">"
If (@Error <> 0)
? "Error setting ADsPath"
Exit
Else
? "Succesfully set ADsPath: " + $sADsPath
EndIf

;(objectCategory=computer)
; Build the filter element of the commandtext
If ($strName = "")
? "Error Nothing in Search String"
Exit
Else
;(&(objectCategory=computer)(|(name=leased*)(name=corp*)))
$sFilter = "(&(objectCategory=computer)(objectClass=computer)(name=" + $strName + "))"
? "Search String: " + $sFilter
EndIf

; Build the returned attributes element of the commandtext.
$sAttribsToReturn = "name"

; Build the depth element of the commandtext.
$sDepth = "subTree"

; Assemble the commandtext.
$Cmd.CommandText = $sADsPath + ";" + $sFilter + ";" + $sAttribsToReturn + ";" + $sDepth
If (@Error <> 0)
? "Error in Query Command Text"
Exit
Else
? "Successfull Query Command Text: " + $Cmd.CommandText
EndIf

; Execute the query.
$Rs = CreateObject("ADODB.Recordset")
If (@Error <> 0)
? "Error Creating Recordset Object"
Exit
Else
? "Successfully Created Recordset Object"
$Rs = $Cmd.Execute
EndIf

$strCount = $rs.RecordCount
If ($strCount > 0)
? "Found " + $strCount + " Accounts. Computer " + $strName + " Account has been migrated "
Sleep 2
If Open( 3 , $ComputerLog , 5 ) = 0

$x = WriteLine( 3 , "ComputerMigrated " + " " + @WKSTA + " " + @DATE + " " + @TIME + @CRLF)

Else

BEEP

? "failed to open file, error code : [" + @ERROR + "]"

EndIf
Else
? "Unable to find any username on AD for " + $strName
If Open( 3 , $ComputerLog , 5 ) = 0

$x = WriteLine( 3 , "ComputerNotMigrated " + " " + @WKSTA + " " + @DATE + " " + @TIME + @CRLF)

Else

BEEP

? "failed to open file, error code : [" + @ERROR + "]"

EndIf
Exit
EndIf