Функция WTSSendMessageW (wtsapi32.h)
Отображает окно сообщения на рабочем столе клиента указанного сеанса служб удаленных рабочих столов.
Синтаксис
BOOL WTSSendMessageW(
[in] HANDLE hServer,
[in] DWORD SessionId,
[in] LPWSTR pTitle,
[in] DWORD TitleLength,
[in] LPWSTR pMessage,
[in] DWORD MessageLength,
[in] DWORD Style,
[in] DWORD Timeout,
[out] DWORD *pResponse,
[in] BOOL bWait
);
Параметры
[in] hServer
Дескриптор сервера узла сеансов удаленных рабочих стола. Укажите дескриптор, открытый функцией WTSOpenServer , или укажите WTS_CURRENT_SERVER_HANDLE , чтобы указать сервер узла сеансов удаленных рабочих столов, на котором выполняется приложение.
[in] SessionId
Идентификатор сеанса Служб удаленных рабочих столов. Чтобы указать текущий сеанс, укажите WTS_CURRENT_SESSION. Функцию WTSEnumerateSessions можно использовать для получения идентификаторов всех сеансов на указанном сервере узла сеансов удаленных рабочих столов.
Чтобы отправить сообщение в сеанс другого пользователя, необходимо иметь разрешение Сообщение. Дополнительные сведения см. в разделе Службы удаленных рабочих столов.
разрешения. Чтобы изменить разрешения для сеанса, используйте средство администрирования Конфигурации служб удаленных рабочих столов.
[in] pTitle
Указатель на строку, завершаемую null, для заголовка окна сообщения.
[in] TitleLength
Длина строки заголовка в байтах.
[in] pMessage
Указатель на строку, завершающуюся значением NULL, которая содержит отображаемое сообщение.
[in] MessageLength
Длина строки сообщения (в байтах).
[in] Style
Содержимое и поведение окна сообщений. Обычно это значение MB_OK. Полный список значений см. в параметре uType функции MessageBox .
[in] Timeout
Время ожидания ответа пользователя функцией WTSSendMessage (в секундах). Если пользователь не отвечает в течение интервала ожидания, параметр pResponse возвращает IDTIMEOUT. Если параметр Timeout равен нулю, WTSSendMessage бесконечно ожидает ответа пользователя.
[out] pResponse
Указатель на переменную, получающую ответ пользователя, который может быть одним из следующих значений.
IDABORT (3)
Прервать
IDCANCEL (2)
Отмена
IDCONTINUE (11)
Продолжить
IDIGNORE (5)
Пропуск
IDNO (7)
Нет
IDOK (1)
OK
IDRETRY (4)
Повторные попытки
IDTRYAGAIN (10)
Повторить
IDYES (6)
Да
IDASYNC (32001 (0x7D01))
Параметр bWait имеет значение FALSE, поэтому функция возвращается без ожидания ответа.
IDTIMEOUT (32000 (0x7D00))
Параметр bWait имеет значение TRUE , а интервал времени ожидания истек.
[in] bWait
Если задано значение TRUE, WTSSendMessage не возвращается до тех пор, пока пользователь не ответит или не истекает интервал времени ожидания. Если параметр Timeout равен нулю, функция не возвращается, пока пользователь не ответит.
Если значение FALSE, функция возвращает немедленно, а параметр pResponse возвращает IDASYNC. Используйте этот метод для простых информационных сообщений (таких как печать сообщений заданий и уведомлений), которые не должны возвращать ответ пользователя вызывающей программе.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение будет ненулевым.
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
Примечание
Заголовок wtsapi32.h определяет WTSSendMessage в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Минимальная версия клиента | Windows Vista |
Минимальная версия сервера | Windows Server 2008 |
Целевая платформа | Windows |
Header | wtsapi32.h |
Библиотека | Wtsapi32.lib |
DLL | Wtsapi32.dll |