PWLX_MESSAGE_BOX コールバック関数 (winwlx.h)

[WlxMessageBox 関数は、Windows Server 2008 および Windows Vista では使用できなくなりました。

WlxMessageBox 関数は、メッセージ ボックスを作成、表示、および操作するために GINA によって呼び出されます。

メモ Windows Vista では GINA DLL は無視されます。
 

構文

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

ダイアログ ボックスの内容と動作を指定します。 このパラメーターは、次の値と組み合わせて使用できます。

意味
MB_ABORTRETRYIGNORE
メッセージ ボックスには、 AbortRetryIgnore の 3 つのコマンド ボタンが含まれています。
MB_APPLMODAL
ユーザーは、hWndOwner パラメーターで識別されたウィンドウで作業を続行する前に、メッセージ ボックスに応答する必要があります。 ただし、ユーザーは他のアプリケーションのウィンドウに移動して動作させることができます。

アプリケーション内のウィンドウの階層によっては、ユーザーがアプリケーション内の他のウィンドウに移動できる場合があります。 メッセージ ボックスの親のすべての子ウィンドウは自動的に無効になりますが、ポップアップ ウィンドウは無効です。

MB_SYSTEMMODALもMB_TASKMODALも指定しない場合、MB_APPLMODALが既定値です。

MB_DEFAULT_DESKTOP_ONLY
現在入力を受け取っているデスクトップは、既定のデスクトップである必要があります。それ以外の場合、関数は失敗します。 既定のデスクトップは、ユーザーがログオンした後にアプリケーションを実行するデスクトップです。
MB_DEFBUTTON1
最初のボタンは既定のボタンです。 MB_DEFBUTTON2またはMB_DEFBUTTON3が指定されていない限り、最初のボタンは常に既定値であることに注意してください。
MB_DEFBUTTON2
2 番目のボタンは既定のボタンです。
MB_DEFBUTTON3
3 番目のボタンは既定のボタンです。
MB_DEFBUTTON4
4 番目のボタンは既定のボタンです。
MB_ICONASTERISK
メッセージ ボックスに、円の中の小文字で構成されるアイコンが表示されます。
MB_ICONEXCLAMATION
感嘆符アイコンがメッセージ ボックスに表示されます。
MB_ICONHAND
メッセージ ボックスに手のアイコンが表示されます。
MB_ICONINFORMATION
メッセージ ボックスに、円の中の小文字で構成されるアイコンが表示されます。
MB_ICONQUESTION
メッセージ ボックスに疑問符アイコンが表示されます。
MB_ICONSTOP
メッセージ ボックスに停止記号アイコンが表示されます。
MB_OK
メッセージ ボックスには、[ OK] というコマンド ボタンが 1 つ含まれています。
MB_OKCANCEL
メッセージ ボックスには、[ OK][キャンセル] の 2 つのコマンド ボタンが含まれています。
MB_RETRYCANCEL
メッセージ ボックスには、 再試行キャンセルの 2 つのコマンド ボタンが含まれています。
MB_SERVICE_NOTIFICATION
呼び出し元は、ユーザーにイベントを通知するサービスです。 この関数は、コンピューターにログオンしているユーザーがいない場合でも、現在アクティブなデスクトップにメッセージ ボックスを表示します。
MB_SETFOREGROUND
メッセージ ボックスがフォアグラウンド ウィンドウになります。 内部的には、Windows はメッセージ ボックスの SetForegroundWindow 関数を呼び出します。
MB_SYSTEMMODAL
すべてのアプリケーションは、ユーザーがメッセージ ボックスに応答するまで中断されます。 アプリケーションがMB_ICONHANDを指定しない限り、メッセージ ボックスは作成されるまでモーダルになりません。 その結果、所有者ウィンドウとその他のウィンドウは、アクティブ化の結果としてメッセージを受信し続けます。 システム モーダル メッセージ ボックスを使用して、メモリ不足など、すぐに注意が必要な重大な、潜在的に損傷を与える可能性のあるエラーをユーザーに通知します。
MB_TASKMODAL
MB_APPLMODALと同じですが、 hWndOwner パラメーターが NULL の場合、現在のタスクに属するすべての最上位ウィンドウは無効になります。 呼び出し元のアプリケーションまたはライブラリに使用可能なウィンドウ ハンドルがないのに、他のアプリケーションを中断せずに現在のアプリケーション内の他のウィンドウへの入力を防ぐ必要がある場合は、このフラグを使用します。
MB_YESNO
メッセージ ボックスには、[ はい ] と [ いいえ] の 2 つのコマンド ボタンが含まれています。
MB_YESNOCANCEL
メッセージ ボックスには、[ はい]、[ いいえ]、[ キャンセル] の 3 つのコマンド ボタンが含まれています。

戻り値

関数が失敗した場合、またはメッセージ ボックスを作成するのに十分なメモリがない場合、戻り値は 0 になります。

関数が成功した場合、戻り値は、ダイアログ ボックスによって返される次のメニュー項目値のいずれかになります。

メモ メッセージ ボックスに [キャンセル ] ボタンがある場合、 ESC キーを押すか [ キャンセル ] ボタンをクリックすると、IDCANCEL 値が返されます。 メッセージ ボックスに [キャンセル] ボタンがない場合、 Esc キーを押しても効果はありません。
 
リターン コード 説明
IDABORT
[中止 ] ボタンが選択されました。
IDCANCEL
[キャンセル] ボタンが選択されました。
IDIGNORE
[無視 ] ボタンが選択されました。
IDNO
ボタンが選択されていません。
IDOK
[OK] ボタンが選択されました。
IDRETRY
[再試行 ] ボタンが選択されました。
IDYES
[はい ] ボタンが選択されました。

注釈

WlxMessageBox 関数は SAS イベントを処理せず、セキュリティ ダイアログ ボックスには適していません。 セキュリティ ダイアログ ボックスには、 WlxDialogBoxWlxDialogBoxIndirect、または WlxDialogBoxIndirectParam 関数を使用します。

WlxMessageBox は Windows MessageBox 関数を複製しますが、この関数では Winlogon がダイアログ ボックスをタイムアウトすることもできます。 詳細については、「 MessageBox」を参照してください。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー winwlx.h

こちらもご覧ください

メッセージ ボックス

SetForegroundWindow

WlxDialogBox

WlxDialogBoxIndirect

WlxDialogBoxIndirectParam

WlxInitialize