Estados pausados
Durante uma operação de conexão, pode haver momentos em que o servidor remoto não pode continuar sem informações adicionais do usuário local. A partir do Windows NT 3.5, a função RasDial suporta estados pausados. Um estado pausado permite que o Gerenciador de Conexões de Acesso Remoto suspenda uma operação de conexão para que o aplicativo cliente RAS possa coletar informações do usuário.
Os estados pausados são úteis nas seguintes situações:
- Quando o usuário precisa fornecer um retorno de chamada número.
- Quando a autenticação do usuário falha, o usuário pode digitar um nome de usuário e senha diferentes.
- Quando a senha do usuário expirar, o usuário poderá fornecer uma nova senha.
Por padrão, o suporte de estado pausado está desabilitado. Os clientes RAS que desejam oferecer suporte a estados pausados devem definir o sinalizador RDEOPTS_PausedStates no RASDIALEXTENSIONS estrutura passada como um parâmetro para RasDial.
Quando ocorre um estado pausado, o Gestor de Ligação de Acesso Remoto invoca o manipulador de notificação do cliente. Se o suporte de estado pausado estiver desativado, a mensagem de notificação indicará um erro e a operação de conexão falhará. Se estiver habilitado, o Connection Manager pausará a operação de conexão para aguardar a resposta do cliente RAS. O cliente RAS pode retomar a operação de conexão por uma segunda chamada RasDial ou encerrá-la chamando a função RasHangUp.
Depois de obter a entrada do usuário, o cliente RAS reinicia a operação de conexão chamando RasDial novamente. Esta segunda chamada RasDial deve especificar as seguintes informações:
- O identificador de conexão que foi retornado pelo original RasDial chamada.
- O mesmo manipulador de notificação que o original RasDial chamada.
- A entrada do usuário nos membros apropriados do RASDIALPARAMS estrutura. Outros membros da estrutura RASDIALPARAMS devem ter as mesmas informações especificadas na chamadaRasDialoriginal.
A segunda chamada RasDial não pode ser feita de dentro do manipulador de notificação.