функция обратного вызова PWLX_MESSAGE_BOX (winwlx.h)
[Функция WlxMessageBox больше не доступна для использования в Windows Server 2008 и Windows Vista.]
Функция WlxMessageBox вызывается GINA для создания, отображения и работы окна сообщения.
Синтаксис
PWLX_MESSAGE_BOX PwlxMessageBox;
int PwlxMessageBox(
[in] HANDLE hWlx,
[in] HWND hwndOwner,
[in] LPWSTR lpszText,
[in] LPWSTR lpszTitle,
[in] UINT fuStyle
)
{...}
Параметры
[in] hWlx
Указывает дескриптор Winlogon , переданный в GINA в вызове WlxInitialize .
[in] hwndOwner
Указывает окно владельца создаваемого окна сообщения. Если этот параметр имеет значение NULL, окно сообщения не имеет окна владельца.
[in] lpszText
Указывает на строку, завершающуюся нулевым значением, которая содержит отображаемое сообщение.
[in] lpszTitle
Указывает на строку, завершаемую null, которая используется для заголовка диалогового окна. Если этот параметр имеет значение NULL, используется название по умолчанию Error.
[in] fuStyle
Задает содержимое и поведение диалогового окна. Этот параметр может быть сочетанием следующих значений.
Значение | Значение |
---|---|
|
Окно сообщения содержит три кнопки: "Прервать", "Повторить" и "Пропустить". |
|
Пользователь должен ответить на окно сообщения, прежде чем продолжить работу в окне, определяемом параметром hWndOwner . Однако пользователь может перейти в окна других приложений для работы.
В зависимости от иерархии окон в приложении пользователь может перейти к другим окнам в приложении. Все дочерние окна родительского окна окна сообщения автоматически отключаются, а всплывающие окна — нет. MB_APPLMODAL — это значение по умолчанию, если не указано ни MB_SYSTEMMODAL, ни MB_TASKMODAL. |
|
Рабочий стол, получающий входные данные, должен быть рабочим столом по умолчанию; в противном случае функция завершается ошибкой. Рабочий стол по умолчанию — это рабочий стол, на котором приложение запускается после входа пользователя в систему. |
|
Первая кнопка является кнопкой по умолчанию. Обратите внимание, что первая кнопка всегда используется по умолчанию, если не указан MB_DEFBUTTON2 или MB_DEFBUTTON3. |
|
Вторая кнопка является кнопкой по умолчанию. |
|
Третья кнопка является кнопкой по умолчанию. |
|
Четвертая кнопка является кнопкой по умолчанию. |
|
В окне сообщения появится значок, состоящий из строчной буквы в круге. |
|
В окне сообщения появится значок восклицательного знака. |
|
В окне сообщения появится значок руки. |
|
В окне сообщения появится значок, состоящий из строчной буквы в круге. |
|
В окне сообщения появится значок вопросительного знака. |
|
В окне сообщения появится значок знака остановки. |
|
Окно сообщения содержит одну кнопку: ОК. |
|
Окно сообщения содержит две кнопки: ОК и Отмена. |
|
Окно сообщения содержит две кнопки команд: Повторить и Отмена. |
|
Вызывающий объект — это служба, которая уведомляет пользователя о событии. Функция выводит окно сообщения на текущем активном рабочем столе, даже если пользователь не вошел в систему. |
|
Окно сообщения становится окном переднего плана. На внутреннем сервере Windows вызывает функцию SetForegroundWindow для окна сообщения. |
|
Все приложения приостанавливаются до тех пор, пока пользователь не ответит на окно сообщения. Если приложение не указывает MB_ICONHAND, окно сообщения не становится модальным до тех пор, пока не будет создано. Следовательно, окно владельца и другие окна продолжают получать сообщения, полученные в результате его активации. Используйте системно-модальные окна сообщений, чтобы уведомить пользователя о серьезных, потенциально опасных ошибках, требующих немедленного внимания, например нехватки памяти. |
|
Аналогично MB_APPLMODAL за исключением того, что все окна верхнего уровня, принадлежащие текущей задаче, отключены, если параметр hWndOwner имеет значение NULL. Используйте этот флаг, если вызывающее приложение или библиотека не имеют дескриптора окна, но по-прежнему необходимо запретить ввод данных в другие окна в текущем приложении без приостановки других приложений. |
|
Окно сообщения содержит две кнопки: Да и Нет. |
|
Окно сообщения содержит три кнопки: Да, Нет и Отмена. |
Возвращаемое значение
Если функция завершается сбоем или недостаточно памяти для создания окна сообщения, возвращаемое значение равно нулю.
Если функция выполняется успешно, возвращаемое значение будет одним из следующих значений пунктов меню, возвращаемых диалоговым окном.
Код возврата | Описание |
---|---|
|
Выбрана кнопка прерывания. |
|
Кнопка "Отмена" была выбрана. |
|
Кнопка "Пропустить" была выбрана. |
|
Кнопка не была выбрана. |
|
Выбрана кнопка ОК. |
|
Выбрана кнопка "Повторить". |
|
Выбрана кнопка "Да ". |
Комментарии
Функция WlxMessageBox не обрабатывает события SAS и не подходит для диалоговых окон безопасности. Используйте функцию WlxDialogBox, WlxDialogBoxIndirect или WlxDialogBoxIndirectParam для диалоговых окон безопасности.
WlxMessageBox дублирует функцию Windows MessageBox , за исключением того, что эта функция также позволяет Winlogon истекать время ожидания диалогового окна. Дополнительные сведения см. в разделе MessageBox.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | winwlx.h |