TerminalServicesProvider::GetSessions

The GetSessions method returns a list of the Terminal Services sessions on the specified server.

Arguments

Input Arguments Required Description

<server>

Yes

The name of the server on which sessions are to be enumerated.

A list of sessions on the specified server, with information about each session according the following structure:

Output Arguments Description

<sessions>/<session>/<user>

The logon name of the session user.

<sessions>/<session>/<sessionName>

The name of the Terminal Services session.

<sessions>/<session>/<sessionId>

ID of the session (a 32-bit unsigned integer).

<sessions>/<session>/<connectState>

The state of the session, which will be one of the following strings:

  • WTSActive

  • WTSConnected

  • WTSConnectQuery

  • WTSShadow

  • WTSDisconnected

  • WTSIdle

  • WTSListen

  • WTSReset

  • WTSDown

  • WTSInit

Refer to https://msdn2.microsoft.com/en-us/library/aa383860.aspx for documentation of the connectState values.

Remarks

Rollback

Not applicable

Underlying API

WTSEnumerateSessions

Sample Code

Example XML Request

<request> 
  <procedure> 
    <execute namespace="Terminal Services Provider" procedure="GetSessions"> 
      <executeData> 
        <server>TheServer</server> 
      </executeData> 
    </execute> 
  </procedure> 
</request> 

Example XML Response

<response> 
  <executeData> 
    <server>TheServer</server> 
    <sessions> 
      <session> 
        <user>UserA</user> 
        <sessionName>Console</sessionName> 
        <sessionId>0</sessionId> 
        <connectState>WTSActive</connectState> 
      </session> 
      <session> 
        <user>UserB</user> 
        <sessionName>RDP-Tcp#2</sessionName> 
        <sessionId>2</sessionId> 
        <connectState>WTSActive</connectState> 
      </session> 
    </sessions> 
  </executeData> 
</response> 

Applies To

Terminal Services Provider

See also

Tasks

TerminalServicesProvider::ControlSession