Scripts to manage Terminal Services Accounts
Clearing Terminal Services Properties for a User AccountConfiguring Terminal Services Environment Properties for a User AccountConfiguring Terminal Services Profile Properties for a User AccountConfiguring Terminal Services Session Properties for a User AccountEnabling Remote Control Settings for a User AccountReading Terminal Services Environment Properties for a User AccountReading Terminal Services Profile PropertiesRetrieving Terminal Services Properties for a UserRetrieving Terminal Services Remote Control Properties for a User AccountRetrieving Terminal Services Session Properties
Clears the Terminal Services userParameters attribute for the MyerKen Active Directory user account.
Const ADS_PROPERTY_CLEAR = 1
Set objUser = GetObject _
("LDAP://cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")
objUser.PutEx ADS_PROPERTY_CLEAR, "userParameters", 0
objUser.SetInfo
Configures the Terminal Services environment properties for the MyerKen Active Directory user account.
Const Enabled = 1
Const Disabled = 0
Set objUser = GetObject _
("LDAP://cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")
objUser.ConnectClientDrivesAtLogon = Enabled
objUser.ConnectClientPrintersAtLogon = Enabled
objUser.DefaultToMainPrinter = Enabled
objUser.TerminalServicesInitialProgram = "cmd"
objUser.TerminalServicesWorkDirectory = "c:\temp"
objUser.SetInfo
Configures Terminal Services profile attributes for the MyerKen Active Directory user account.
Const Enabled = 1
Const Disabled = 0
Set objUser = GetObject _
("LDAP://cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")
objUser.TerminalServicesProfilePath = ""
objUser.TerminalServicesHomeDirectory = ""
objUser.TerminalServicesHomeDrive = ""
objUser.AllowLogon = Enabled
objUser.SetInfo
Configures Terminal Services session attributes for the MyerKen Active Directory user account.
Const Enabled = 1
Const Disabled = 0
Set objUser = GetObject _
("LDAP://cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")
objUser.MaxDisconnectionTime = 2880
objUser.MaxConnectionTime = 1440
objUser.MaxIdleTime = 180
objUser.BrokenConnectionAction = Enabled
objUser.ReconnectionAction = Enabled
objUser.SetInfo
Configures the EnableRemoteControl attribute for the MyerKen Active Directory user account.
Const Disable = 0
Const EnableInputNotify = 1
Const EnableInputNoNotify = 2
Const EnableNoInputNotify = 3
Const EnableNoInputNoNotify = 4
Set objUser = GetObject _
("LDAP://cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")
objUser.EnableRemoteControl = EnableNoInputNoNotify
objUser.SetInfo
Returns Terminal Services environment properties for the MyerKen Active Directory user account.
Set objUser = GetObject _
("LDAP://cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")
intConnectClientDrivesAtLogon = objUser.ConnectClientDrivesAtLogon
intConnectClientPrintersAtLogon = objUser.ConnectClientPrintersAtLogon
intDefaultToMainPrinter = objUser.DefaultToMainPrinter
strTerminalServicesInitialProgram = objUser.TerminalServicesInitialProgram
strTerminalServicesWorkDirectory = objUser.TerminalServicesWorkDirectory
WScript.echo "ConnectClientDrivesAtLogon: " & intConnectClientDrivesAtLogon
WScript.echo "ConnectClientPrintersAtLogon: " & _
intConnectClientPrintersAtLogon
WScript.echo "DefaultToMainPrinter: " & intDefaultToMainPrinter
WScript.echo "TerminalServicesInitialProgram: " & _
strTerminalServicesInitialProgram
WScript.echo "TerminalServicesWorkDirectory: " & _
strTerminalServicesWorkDirectory
Returns Terminal Services profile information for the MyerKen Active Directory user account.
Set objUser = GetObject _
("LDAP://cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")
strTerminalServicesProfilePath = objUser.TerminalServicesProfilePath
strTerminalServicesHomeDirectory = objUser.TerminalServicesHomeDirectory
strTerminalServicesHomeDrive = objUser.TerminalServicesHomeDrive
intAllowLogon = objUser.AllowLogon
WScript.echo "TerminalServicesProfilePath : " & strTerminalServicesProfilePath
WScript.echo "TerminalServicesHomeDirectory: " & _
strTerminalServicesHomeDirectory
WScript.echo "TerminalServicesHomeDrive: " & strTerminalServicesHomeDrive
WScript.echo "AllowLogon: " & intAllowLogon
Retrieve a user's Terminal Services Profile settings using the ADSI Extension for Terminal Services User Configuration. Requires Windows Server 2003.
Set objUser = GetObject("LDAP://cn=youngrob,ou=r&d,dc=fabrikam,dc=com")
WScript.Echo objUser.Name & " Terminal Services Profile Settings"
WScript.Echo "--------------------------------------------------"
'**********************************************************************
'* Terminal Services Profile tab
'**********************************************************************
WScript.Echo "Allow Logon: " & objUser.AllowLogon
WScript.Echo "Terminal Services Home Directory: " & _
objUser.TerminalServicesHomeDirectory
WScript.Echo "Terminal Services Home Drive: " & _
objUser.TerminalServicesHomeDrive
WScript.Echo "Terminal Services Profile Path: " & _
objUser.TerminalServicesProfilePath
'**********************************************************************
'* Remote control tab
'**********************************************************************
WScript.Echo "Enable Remote Control: " & objUser.EnableRemoteControl
'**********************************************************************
'* Sessions tab
'**********************************************************************
WScript.Echo "Broken Connection Action: " & objUser.BrokenConnectionAction
WScript.Echo "Max Connection Time: " & objUser.MaxConnectionTime
WScript.Echo "Max Disconnection Time: " & objUser.MaxDisconnectionTime
WScript.Echo "Max Idle Time: " & objUser.MaxIdleTime
WScript.Echo "Reconnection Action: " & objUser.ReconnectionAction
'**********************************************************************
'* Environment tab
'**********************************************************************
WScript.Echo "Connect Client Drives At Logon: " & _
objUser.ConnectClientDrivesAtLogon
WScript.Echo "Connect Client Printers At Logon: " & _
objUser.ConnectClientPrintersAtLogon
WScript.Echo "Default To Main Printer: " & _
objUser.DefaultToMainPrinter
WScript.Echo "Terminal Services Initial Program: " & _
objUser.TerminalServicesInitialProgram
WScript.Echo "Terminal Services Work Directory: " & _
objUser.TerminalServicesWorkDirectory
Retrieves Terminal Services Remote Control attribute values for the MyerKen user account.
Const Disable = 0
Const EnableInputNotify = 1
Const EnableInputNoNotify = 2
Const EnableNoInputNotify = 3
Const EnableNoInputNoNotify = 4
Set objUser = GetObject _
("LDAP://cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")
intEnableRemoteControl = objUser.EnableRemoteControl
Select Case intEnableRemoteControl
Case Disable WScript.Echo "Remote control disabled"
Case EnableInputNotify
WScript.Echo "Remote control enabled"
WScript.Echo "User permission required"
WScript.Echo "Interact with the session"
Case EnableInputNoNotify
WScript.Echo "Remote control enabled"
WScript.Echo "User permission not required"
WScript.Echo "Interact with the session"
Case EnableNoInputNotify
WScript.Echo "Remote control enabled"
WScript.Echo "User permission required"
WScript.Echo "View the session"
Case EnableNoInputNoNotify
WScript.Echo "Remote control enabled"
WScript.Echo "User permission not required"
WScript.Echo "View the session"
End Select
Retrieves Terminal Services session properties for the MyerKen Active Directory user account.
Set objUser = GetObject _
("LDAP://cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")
intMaxDisconnectionTime = objUser.MaxDisconnectionTime
intMaxConnectionTime = objUser.MaxConnectionTime
intMaxIdleTime = objUser.MaxIdleTime
intBrokenConnectionAction = objUser.BrokenConnectionAction
intReconnectionAction = objUser.ReconnectionAction
WScript.echo "Maximum Disconnection Time : " & intMaxDisconnectionTime
WScript.echo "Maximum Connection Time: " & intMaxConnectionTime
WScript.echo "Maximum Idle Time: " & intMaxIdleTime
WScript.echo "Broken Connection Action: " & intBrokenConnectionAction
WScript.echo "Reconnection Action : " & intReconnectionAction