Operazioni di timeout del servizio supportate della finestra di dialogo

Winlogon implementa due operazioni di timeout, una per le finestre di dialogo sicure e l'altra per l'attivazione e la terminazione dello screen saver.

Durante la visualizzazione di una finestra di dialogo sicura, ad esempio l'accesso o lo sblocco di una workstation, Winlogon può eseguire il timeout delle finestre di dialogo e restituire un codice risultato appropriato alla procedura della finestra di dialogo. Winlogon fornisce un set di funzioni di supporto della finestra di dialogo per l'GINA. L'GINA deve usare queste funzioni anziché le rispettive controparti di Windows per garantire che la GINA e Winlogon mantengano il controllo appropriato sulle finestre di dialogo. L'errore di usare le versioni Winlogon di queste funzioni potrebbe causare l'accesso non autorizzato degli utenti al sistema.

I servizi della finestra di dialogo Winlogon vengono forniti dalle funzioni di supporto seguenti.

Funzione di supporto Descrizione
WlxMessageBox Simile alla funzione Windows MessageBox .
WlxDialogBox Analogamente alla funzione Windows DialogBox .
WlxDialogBoxIndirect Analogamente alla funzione Windows DialogBoxIndirect .
WlxDialogBoxParam Simile alla funzione Windows DialogBoxParam .
WlxDialogBoxIndirectParam Analogamente alla funzione Windows DialogBoxIndirectParam .

 

Le DLL GINA possono anche ricevere WLX_WM_SAS messaggi da Winlogon. Questi messaggi vengono inviati alle finestre di dialogo attive se viene ricevuta una sequenza di attenzione sicura . Questo è utile se l'GINA si trova nel processo di richiesta del PIN corrispondente per una smart card e la scheda viene rimossa dal lettore smart card. Winlogon usa WLX_DLG_SAS come codice di risultato EndDialog quando si verifica un evento sas durante un'operazione della finestra di dialogo.

I timeout vengono inoltre recapitati in questo modo. Viene inviato un messaggio di WLX_WM_SAS con WLX_SAS_TYPE_SCRNSVR_TIMEOUT o WLX_SAS_TYPE_TIMEOUT. La finestra di dialogo termina con un codice di uscita appropriato per consentire agli sviluppatori di GINA di collegare le notifiche di timeout.

Le finestre di dialogo GINA possono essere terminate da Winlogon usando il codice WLX_DLG_USER_LOGOFF. Ciò indica che l'utente è stato disconnesso durante l'esecuzione della finestra di dialogo, ad esempio chiamando la funzione ExitWindowsEx da un altro thread.

Inizializzazione di Winlogon

Stati di Winlogon

Invio di messaggi alla GINA

Funzioni di supporto winlogon