WTSRegisterSessionNotification function (wtsapi32.h)
Registers the specified window to receive session change notifications.
BOOL WTSRegisterSessionNotification( [in] HWND hWnd, [in] DWORD dwFlags );
Handle of the window to receive session change notifications.
Specifies which session notifications are to be received. This parameter can be one of the following values.
Only session notifications involving the session attached to by the window identified by the hWnd parameter value are to be received.
All session notifications are to be received.
If the function succeeds, the return value is TRUE. Otherwise, it is FALSE. To get extended error information, call GetLastError.
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.
|Minimum supported client||Windows Vista|
|Minimum supported server||Windows Server 2008|
|API set||ext-ms-win-session-wtsapi32-l1-1-0 (introduced in Windows 8)|