Partager via


Fonction RasHangUpA (ras.h)

La fonction RasHangUp met fin à une connexion d’accès à distance. La connexion est spécifiée avec un handle de connexion RAS. La fonction libère toutes les ressources RASAPI32.DLL associées au handle.

Syntaxe

DWORD RasHangUpA(
  [in] HRASCONN unnamedParam1
);

Paramètres

[in] unnamedParam1

Spécifie la connexion d’accès à distance à arrêter. Il s’agit d’un handle retourné par un appel précédent à RasDial ou RasEnumConnections.

Valeur retournée

Si la fonction réussit, la valeur de retour est ERROR_SUCCESS.

Si la fonction échoue, la valeur de retour est l’un des codes d’erreur suivants ou une valeur provenant des codes d’erreur de routage et d’accès à distance ou winerror.h.

Valeur Signification
ERROR_INVALID_HANDLE
Le handle spécifié dans hrasconn n’est pas valide.

Remarques

La connexion est arrêtée même si l’appel RasDial n’est pas encore terminé.

Après cet appel, le handle hrasconn ne peut plus être utilisé.

Une application ne doit pas appeler RasHangUp , puis quitter immédiatement. L’ordinateur à état de connexion a besoin de temps pour s’arrêter correctement. Si le système arrête prématurément l’ordinateur d’état, celui-ci peut ne pas fermer correctement un port, ce qui laisse le port dans un état incohérent. En outre, une tentative immédiate d’utilisation de la même connexion peut échouer, laissant la connexion inutilisable. Un moyen simple d’éviter ces problèmes consiste à appeler Sleep(3000) après le retour de RasHangUp ; après cette pause, l’application peut quitter. Une façon plus réactive d’éviter ces problèmes consiste, après le retour de RasHangUp, à appeler RasGetConnectStatus(hrasconn) et Sleep(0) dans une boucle jusqu’à ce que RasGetConnectStatus retourne ERROR_INVALID_HANDLE.

Vous pouvez appeler RasHangUp sur le handle retourné par RasGetSubEntryHandle pour mettre fin à une seule liaison dans une connexion multi-liaison. Toutefois, dans ce cas, vous ne pouvez pas utiliser RasGetConnectStatus pour déterminer si le lien s’est arrêté ; RasGetConnectStatus peut ne pas retourner ERROR_INVALID_HANDLE même si le lien s’est terminé avec succès.

Notes

L’en-tête ras.h définit RasHangUp en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête ras.h
Bibliothèque Rasapi32.lib
DLL Rasapi32.dll

Voir aussi

RASCONN

RasCustomHangUp

RasDial

RasEnumConnections

RasGetConnectStatus

Vue d’ensemble du service d’accès à distance (RAS)

Fonctions du service d’accès à distance

Veille