Unterstützte Time out-Vorgänge des Dialogfelddiensts
Winlogon implementiert zwei Time out-Vorgänge: einen für sichere Dialogfelder und einen für die Aktivierung und Beendigung des Bildschirmschonrs.
Beim Anzeigen eines sicheren Dialogfelds, z. B. anmelden oder entsperren einer Arbeitsstation, kann Winlogon ein Time out für die Dialogfelder ausführen und einen entsprechenden Ergebniscode an die Dialogfeldprozedur zurückgeben. Winlogon stellt eine Reihe von Dialogfeldunterstützungsfunktionen für die GINAbereit. Die GINA muss diese Funktionen anstelle ihrer Windows-Entsprechungen verwenden, um sicherzustellen, dass GINA und Winlogon die entsprechende Kontrolle über die Dialogfelder behalten. Wenn die Winlogon-Versionen dieser Funktionen nicht verwendet werden, können nicht autorisierte Benutzer Zugriff auf das System erhalten.
Winlogon-Dialogfelddienste werden von den folgenden Supportfunktionen bereitgestellt.
| Supportfunktion | BESCHREIBUNG |
|---|---|
| WlxMessageBox | Ähnlich wie bei der Windows MessageBox-Funktion. |
| WlxDialogBox | Ähnlich wie bei der Windows DialogBox-Funktion. |
| WlxDialogBoxIndirect | Ähnlich wie bei der Windows DialogBoxIndirect-Funktion. |
| WlxDialogBoxParam | Ähnlich wie bei der Windows DialogBoxParam-Funktion. |
| WlxDialogBoxIndirectParam | Ähnlich wie bei der Windows DialogBoxIndirectParam-Funktion. |
GINA-DLLs können auch WLX _ WM _ SAS-Nachrichten von Winlogon empfangen. Diese Nachrichten werden an aktive Dialogfelder gesendet, wenn eine sichere Aufmerksamkeitssequenz (Secure Attention Sequence, SAS) empfangen wird. Dies ist nützlich, wenn die GINA gerade zur Eingabe der entsprechenden PIN für eine Smartcardauffordert und die Karte aus dem Smartcardleserentfernt wird. Winlogon verwendet WLX _ DLG _ SAS als EndDialog-Ergebniscode, wenn während eines Dialogfeldvorgangs ein SAS-Ereignis auftritt.
Time outs werden auch auf diese Weise bereitgestellt. Eine WLX _ WM _ SAS-Nachricht wird mit WLX _ SAS TYPE _ _ SCRNSVR _ TIMEOUT oder WLX _ SAS TYPE _ _ TIMEOUT gesendet. Das Dialogfeld endet mit einem entsprechenden Exitcode, damit GINA-Entwickler die Time out-Benachrichtigungen verknüpfen können.
GINA-Dialogfelder können durch Winlogon mit dem Code WLX _ DLG USER LOGOFF beendet _ _ werden. Dies gibt an, dass sich der Benutzer während der Ausführung des Dialogfelds abgemeldet hat (z. B. durch Aufrufen der ExitWindowsEx-Funktion von einem anderen Thread).