次の方法で共有


サポートされているダイアログ ボックス サービスのタイムアウト操作

Winlogon は、セキュリティで保護されたダイアログ ボックス用とスクリーン セーバーのアクティブ化と終了用の 2 つのタイムアウト操作を実装します。

ログオンやワークステーションのロック解除など、セキュリティで保護されたダイアログ ボックスを表示しているときに、Winlogon はダイアログ ボックスをタイムアウトさせ、ダイアログ ボックスのプロシージャに適切な結果コードを返すことができます。 Winlogon は、GINAのダイアログ ボックスサポート機能のセットを提供します。 GINA は、対応する Windows の代わりにこれらの関数を使用して、GINA と Winlogon がダイアログ ボックスを適切に制御できるようにする必要があります。 これらの関数の Winlogon バージョンを使用しないと、承認されていないユーザーがシステムにアクセスする可能性があります。

Winlogon ダイアログ ボックス サービスは、次のサポート機能によって提供されます。

サポート機能 形容
WlxMessageBox Windows MessageBox 関数と同様です。
WlxDialogBox Windows DialogBox 関数と同様です。
WlxDialogBoxIndirectする Windows DialogBoxIndirect 関数と同様です。
WlxDialogBoxParam Windows DialogBoxParam 関数と同様です。
WlxDialogBoxIndirectParam Windows DialogBoxIndirectParam 関数と同様です。

 

GINA DLL は、Winlogon からWLX_WM_SASメッセージを受信することもできます。 これらのメッセージは、セキュア アテンション シーケンス (SAS) を受信した場合に、アクティブなダイアログ ボックスに送信されます。 これは、GINA が スマート カードの一致する PIN の入力を求める処理中で、カードがスマート カード リーダーから削除されている場合に便利です。 Winlogon は、ダイアログ ボックスの操作中に SAS イベントが発生したときに、WLX_DLG_SASを EndDialog の結果コードとして使用します。

タイムアウトもこの方法で配信されます。 WLX_WM_SAS メッセージは、WLX_SAS_TYPE_SCRNSVR_TIMEOUTまたはWLX_SAS_TYPE_TIMEOUTと共に送信されます。 ダイアログ ボックスは、GINA 開発者がタイムアウト通知をフックできるように、適切な終了コードで終了します。

GINA ダイアログ ボックスは、コード WLX_DLG_USER_LOGOFFを使用して Winlogon によって終了できます。 これは、ダイアログ ボックスの実行中にユーザーがログオフしたことを示します (たとえば、別のスレッドから ExitWindowsEx 関数を呼び出す)。

Winlogon の初期化の

Winlogon States

GINA にメッセージを送信する

Winlogon サポート関数の