WTSRegisterSessionNotification function (wtsapi32.h)

Registers the specified window to receive session change notifications.

Syntax

BOOL WTSRegisterSessionNotification(
  [in] HWND  hWnd,
  [in] DWORD dwFlags
);

Parameters

[in] hWnd

Handle of the window to receive session change notifications.

[in] dwFlags

Specifies which session notifications are to be received. This parameter can be one of the following values.

NOTIFY_FOR_THIS_SESSION

Only session notifications involving the session attached to by the window identified by the hWnd parameter value are to be received.

NOTIFY_FOR_ALL_SESSIONS

All session notifications are to be received.

Return value

If the function succeeds, the return value is TRUE. Otherwise, it is FALSE. To get extended error information, call GetLastError.

Remarks

If this function is called before the dependent services of Remote Desktop Services have started, an RPC_S_INVALID_BINDING error code may be returned. When the Global\TermSrvReadyEvent global event is set, all dependent services have started and this function can be successfully called.

Session change notifications are sent in the form of a WM_WTSSESSION_CHANGE message. These notifications are sent only to the windows that have registered for them using this function.

When a window no longer requires these notifications, it must call WTSUnRegisterSessionNotification before being destroyed. For every call to this function, there must be a corresponding call to WTSUnRegisterSessionNotification.

If the window handle passed in this function is already registered, the value of the dwFlags parameter is ignored.

To receive session change notifications from a service, use the HandlerEx function.

Requirements

Requirement Value
Minimum supported client Windows Vista
Minimum supported server Windows Server 2008
Target Platform Windows
Header wtsapi32.h
Library Wtsapi32.lib
DLL Wtsapi32.dll
API set ext-ms-win-session-wtsapi32-l1-1-0 (introduced in Windows 8)

See also

HandlerEx

WM_WTSSESSION_CHANGE

WTSGetActiveConsoleSessionId

WTSRegisterSessionNotificationEx

WTSSESSION_NOTIFICATION

WTSUnRegisterSessionNotification