États suspendus
Au cours d’une opération de connexion, il peut arriver que le serveur distant ne puisse pas continuer sans informations supplémentaires de la part de l’utilisateur local. À partir de Windows NT 3,5, la fonction rasdial prend en charge les États suspendus. Un état suspendu permet au gestionnaire de connexions d’accès à distance de suspendre une opération de connexion afin que l’application cliente RAS puisse collecter des informations auprès de l’utilisateur.
Les États suspendus sont utiles dans les situations suivantes :
- Lorsque l’utilisateur doit fournir un numéro de rappel .
- En cas d’échec de l’authentification de l’utilisateur, l’utilisateur peut taper un nom d’utilisateur et un mot de passe différents.
- Lorsque le mot de passe de l’utilisateur a expiré, l’utilisateur peut fournir un nouveau mot de passe.
Par défaut, la prise en charge de l’état suspendu est désactivée. Les clients RAS qui souhaitent prendre en charge les États suspendus doivent définir l' _ indicateur RDEOPTS PausedStates dans la structure RASDIALEXTENSIONS transmise en tant que paramètre à rasdial.
Lorsqu’un état suspendu se produit, le gestionnaire de connexions d’accès à distance appelle le gestionnaire de notification du client. Si la prise en charge de l’état suspendu est désactivée, le message de notification indique une erreur et l’opération de connexion échoue. S’il est activé, le gestionnaire de connexions interrompt l’opération de connexion pour attendre la réponse du client RAS. Le client RAS peut reprendre l’opération de connexion par un deuxième appel de rasdial , ou l’arrêter en appelant la fonction RasHangUp .
Après avoir obtenu l’entrée de l’utilisateur, le client RAS redémarre l’opération de connexion en appelant à nouveau rasdial . Ce deuxième appel de rasdial doit spécifier les informations suivantes :
- Handle de connexion qui a été retourné par l’appel de rasdial d’origine.
- Le même gestionnaire de notification que l’appel de rasdial d’origine.
- Entrée de l’utilisateur dans les membres appropriés de la structure RASDIALPARAMS . Les autres membres de la structure RASDIALPARAMS doivent avoir les mêmes informations que celles spécifiées dans l’appel de la fonction rasdial d’origine.
Le deuxième appel de rasdial ne peut pas être effectué à partir du gestionnaire de notifications.