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
WlxInitialize 呼び出しで GINA に渡される Winlogon ハンドルを指定します。
[in] hwndOwner
作成するメッセージ ボックスの所有者ウィンドウを指定します。 このパラメーターが NULL の場合、メッセージ ボックスには所有者ウィンドウがありません。
[in] lpszText
表示するメッセージを含む null で終わる文字列を指します。
[in] lpszTitle
ダイアログ ボックスのタイトルに使用される null で終わる文字列を指します。 このパラメーターが NULL の場合、既定のタイトル Error が使用されます。
[in] fuStyle
ダイアログ ボックスの内容と動作を指定します。 このパラメーターは、次の値と組み合わせて使用できます。
値 | 意味 |
---|---|
|
メッセージ ボックスには、 Abort、 Retry、 Ignore の 3 つのコマンド ボタンが含まれています。 |
|
ユーザーは、hWndOwner パラメーターで識別されたウィンドウで作業を続行する前に、メッセージ ボックスに応答する必要があります。 ただし、ユーザーは他のアプリケーションのウィンドウに移動して動作させることができます。
アプリケーション内のウィンドウの階層によっては、ユーザーがアプリケーション内の他のウィンドウに移動できる場合があります。 メッセージ ボックスの親のすべての子ウィンドウは自動的に無効になりますが、ポップアップ ウィンドウは無効です。 MB_SYSTEMMODALもMB_TASKMODALも指定しない場合、MB_APPLMODALが既定値です。 |
|
現在入力を受け取っているデスクトップは、既定のデスクトップである必要があります。それ以外の場合、関数は失敗します。 既定のデスクトップは、ユーザーがログオンした後にアプリケーションを実行するデスクトップです。 |
|
最初のボタンは既定のボタンです。 MB_DEFBUTTON2またはMB_DEFBUTTON3が指定されていない限り、最初のボタンは常に既定値であることに注意してください。 |
|
2 番目のボタンは既定のボタンです。 |
|
3 番目のボタンは既定のボタンです。 |
|
4 番目のボタンは既定のボタンです。 |
|
メッセージ ボックスに、円の中の小文字で構成されるアイコンが表示されます。 |
|
感嘆符アイコンがメッセージ ボックスに表示されます。 |
|
メッセージ ボックスに手のアイコンが表示されます。 |
|
メッセージ ボックスに、円の中の小文字で構成されるアイコンが表示されます。 |
|
メッセージ ボックスに疑問符アイコンが表示されます。 |
|
メッセージ ボックスに停止記号アイコンが表示されます。 |
|
メッセージ ボックスには、[ OK] というコマンド ボタンが 1 つ含まれています。 |
|
メッセージ ボックスには、[ OK] と [キャンセル] の 2 つのコマンド ボタンが含まれています。 |
|
メッセージ ボックスには、 再試行 と キャンセルの 2 つのコマンド ボタンが含まれています。 |
|
呼び出し元は、ユーザーにイベントを通知するサービスです。 この関数は、コンピューターにログオンしているユーザーがいない場合でも、現在アクティブなデスクトップにメッセージ ボックスを表示します。 |
|
メッセージ ボックスがフォアグラウンド ウィンドウになります。 内部的には、Windows はメッセージ ボックスの SetForegroundWindow 関数を呼び出します。 |
|
すべてのアプリケーションは、ユーザーがメッセージ ボックスに応答するまで中断されます。 アプリケーションがMB_ICONHANDを指定しない限り、メッセージ ボックスは作成されるまでモーダルになりません。 その結果、所有者ウィンドウとその他のウィンドウは、アクティブ化の結果としてメッセージを受信し続けます。 システム モーダル メッセージ ボックスを使用して、メモリ不足など、すぐに注意が必要な重大な、潜在的に損傷を与える可能性のあるエラーをユーザーに通知します。 |
|
MB_APPLMODALと同じですが、 hWndOwner パラメーターが NULL の場合、現在のタスクに属するすべての最上位ウィンドウは無効になります。 呼び出し元のアプリケーションまたはライブラリに使用可能なウィンドウ ハンドルがないのに、他のアプリケーションを中断せずに現在のアプリケーション内の他のウィンドウへの入力を防ぐ必要がある場合は、このフラグを使用します。 |
|
メッセージ ボックスには、[ はい ] と [ いいえ] の 2 つのコマンド ボタンが含まれています。 |
|
メッセージ ボックスには、[ はい]、[ いいえ]、[ キャンセル] の 3 つのコマンド ボタンが含まれています。 |
戻り値
関数が失敗した場合、またはメッセージ ボックスを作成するのに十分なメモリがない場合、戻り値は 0 になります。
関数が成功した場合、戻り値は、ダイアログ ボックスによって返される次のメニュー項目値のいずれかになります。
リターン コード | 説明 |
---|---|
|
[中止 ] ボタンが選択されました。 |
|
[キャンセル] ボタンが選択されました。 |
|
[無視 ] ボタンが選択されました。 |
|
ボタンが選択されていません。 |
|
[OK] ボタンが選択されました。 |
|
[再試行 ] ボタンが選択されました。 |
|
[はい ] ボタンが選択されました。 |
注釈
WlxMessageBox 関数は SAS イベントを処理せず、セキュリティ ダイアログ ボックスには適していません。 セキュリティ ダイアログ ボックスには、 WlxDialogBox、 WlxDialogBoxIndirect、または WlxDialogBoxIndirectParam 関数を使用します。
WlxMessageBox は Windows MessageBox 関数を複製しますが、この関数では Winlogon がダイアログ ボックスをタイムアウトすることもできます。 詳細については、「 MessageBox」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | winwlx.h |