VBScript example: automatic login

Wednesday, February 25, 2009 11:14 pm Brian T. Pence
Print

The following script uses two command (WaitFor and SendText) to perform the bare minimum tasks required to perform a scripted login. 

This script could go in the login script location in Options->Properties->Scripts section if this script is specific to the session file you currently have open.  It could also go in Options->Properties->Global as the global login script if all of your logins are always performed the same.  To implement in your environment, make sure that the 'WaitFor' Functions are waiting for the proper strings.  Login prompts vary somewhat from system to system.

Sub Main
Terminal.WaitFor("login:")
Terminal.SendText("myusername"+vbNewLine)
Terminal.WaitFor("Password for")
Terminal.SendText("mypassword"+vbNewLine)
End Sub

The drawback to the script above is that if the login prompts never come, the script waits forever!  A smarter login script might resemble the script below.  It implements a fixed amount of time to wait for the prompts, then uses the return code of the Wait to determine whether or not to proceed.  The VBScript MsgBox function is used to alert the user to possible problems. 

Sub Main
DIM success
success = Terminal.WaitForTimeout ("login:" ,5000)
if  success = TRUE   then
  Terminal.SendText("myusername"+vbNewLine)
  success = Terminal.WaitForTimeout("Password:", 5000)
  if success then
    Terminal.SendText("mypassword"+vbNewLine)
  else
    MsgBox "Timed out waiting for password prompt"
  end if
else
  MsgBox "Timed out waiting for login prompt"
end if
End Sub

 

Related Links: VBScript API , Scripting Home

Last Updated on Friday, February 27, 2009 01:04 am