Compartilhar via


Operações de tempo limite de serviço da caixa de diálogo com suporte

O Winlogon implementa duas operações de tempo limite, uma para caixas de diálogo seguras e outra para ativação e encerramento do protetor de tela.

Ao exibir uma caixa de diálogo segura, como logon ou desbloqueio de uma estação de trabalho, o Winlogon pode atingir o tempo limite das caixas de diálogo e retornar um código de resultado apropriado para o procedimento da caixa de diálogo. O Winlogon fornece um conjunto de funções de suporte de caixa de diálogo para o GINA. A GINA deve usar essas funções em vez de seus equivalentes do Windows para garantir que a GINA e o Winlogon mantenham o controle apropriado sobre as caixas de diálogo. A falha ao usar as versões do Winlogon dessas funções pode fazer com que usuários não autorizados obtenham acesso ao sistema.

Os serviços da caixa de diálogo Winlogon são fornecidos pelas seguintes funções de suporte.

Função de suporte Descrição
WlxMessageBox Semelhante à função MessageBox do Windows.
WlxDialogBox Semelhante à função Caixa de Diálogo do Windows.
WlxDialogBoxIndirect Semelhante à função DialogBoxIndirect do Windows.
WlxDialogBoxParam Semelhante à função DialogBoxParam do Windows.
WlxDialogBoxIndirectParam Semelhante à função DialogBoxIndirectParam do Windows.

 

As DLLs GINA também podem receber mensagens WLX_WM_SAS do Winlogon. Essas mensagens serão enviadas para caixas de diálogo ativas se uma SAS ( sequência de atenção segura ) for recebida. Isso será útil se o GINA estiver no processo de solicitar o PIN correspondente para um cartão inteligente e o cartão for removido do leitor de cartão inteligente. O Winlogon usa WLX_DLG_SAS como o código de resultado EndDialog quando um evento SAS ocorre durante uma operação de caixa de diálogo.

Os tempos limite também são entregues dessa maneira. Uma mensagem WLX_WM_SAS é enviada com WLX_SAS_TYPE_SCRNSVR_TIMEOUT ou WLX_SAS_TYPE_TIMEOUT. A caixa de diálogo terminará com um código de saída apropriado para permitir que os desenvolvedores gina conectem as notificações de tempo limite.

As caixas de diálogo GINA podem ser encerradas pelo Winlogon usando o código WLX_DLG_USER_LOGOFF. Isso indica que o usuário fez logoff durante a execução da caixa de diálogo (por exemplo, chamando a função ExitWindowsEx de outro thread).

Inicializando o Winlogon

Estados do Winlogon

Enviando mensagens para a GINA

Funções de suporte do Winlogon