Функция WTSRegisterSessionNotification (wtsapi32.h)

Регистрирует указанное окно для получения уведомлений об изменениях сеанса.

Синтаксис

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

Параметры

[in] hWnd

Дескриптор окна для получения уведомлений об изменениях сеанса.

[in] dwFlags

Указывает, какие уведомления о сеансе должны быть получены. Этот параметр может принимать одно из указанных ниже значений.

NOTIFY_FOR_THIS_SESSION

Будут получены только уведомления о сеансе, присоединенном к окну, определенному значением параметра hWnd .

NOTIFY_FOR_ALL_SESSIONS

Все уведомления о сеансе должны быть получены.

Возвращаемое значение

Если функция выполнена успешно, возвращается значение TRUE. В противном случае — FALSE. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Если эта функция вызывается до запуска зависимых служб удаленных рабочих столов, может быть возвращен RPC_S_INVALID_BINDING код ошибки. При установке глобального события Global\TermSrvReadyEvent запущены все зависимые службы, и эту функцию можно успешно вызвать.

Уведомления об изменениях сеанса отправляются в виде сообщения WM_WTSSESSION_CHANGE . Эти уведомления отправляются только тем окнам, которые зарегистрированы для них с помощью этой функции.

Если окно больше не требует этих уведомлений, оно должно вызвать WTSUnRegisterSessionNotification перед уничтожением. Для каждого вызова этой функции должен быть соответствующий вызов WTSUnRegisterSessionNotification.

Если дескриптор окна, переданный в этой функции, уже зарегистрирован, значение параметра dwFlags игнорируется.

Чтобы получать уведомления об изменениях сеанса от службы, используйте функцию HandlerEx .

Требования

Требование Значение
Минимальная версия клиента Windows Vista
Минимальная версия сервера Windows Server 2008
Целевая платформа Windows
Header wtsapi32.h
Библиотека Wtsapi32.lib
DLL Wtsapi32.dll
Набор API ext-ms-win-session-wtsapi32-l1-1-0 (представлено в Windows 8)

См. также раздел

HandlerEx

WM_WTSSESSION_CHANGE

WTSGetActiveConsoleSessionId

WTSRegisterSessionNotificationEx

WTSSESSION_NOTIFICATION

WTSUnRegisterSessionNotification