WTSGetActiveConsoleSessionId (kernel32)
Last changed: s_verdiesen@hotmail.com-89.146.46.169

.
Summary
The WTSGetActiveConsoleSessionId function retrieves the Terminal Services session currently attached to the physical console. The physical console is the monitor, keyboard, and mouse.

C# Signature:

/// <summary>
/// The WTSGetActiveConsoleSessionId function retrieves the Remote Desktop Services session that
/// is currently attached to the physical console. The physical console is the monitor, keyboard, and mouse.
/// Note that it is not necessary that Remote Desktop Services be running for this function to succeed.
/// </summary>
/// <returns>The session identifier of the session that is attached to the physical console. If there is no
/// session attached to the physical console, (for example, if the physical console session is in the process
/// of being attached or detached), this function returns 0xFFFFFFFF.</returns>
[DllImport("kernel32.dll")]
private static extern uint WTSGetActiveConsoleSessionId();

VB .NET Signature:

/// Private Declare Function WTSGetActiveConsoleSessionId Lib "Kernel32.dll" Alias "WTSGetActiveConsoleSessionId" () As Int32

User-Defined Types:

None.

Notes:

None.

Tips & Tricks:

See WTSQuerySessionInformation

Sample Code:

  internal static uint GetSessionId()
  {
     uint result = WTSGetActiveConsoleSessionId();
     if (result == 0xFFFFFFFF)
    throw new InvalidOperationException("No session attached to the physical console.");

     return result;
  }

Alternative Managed API:

TODO

Documentation