Desconectando
Cuando una aplicación cliente RAS inicia una operación de conexión, la llamada RasDial recibe un identificador de conexión HRASCONN para identificar la conexión. Si el identificador devuelto no es NULL, el cliente debe llamar finalmente a la función RasHangUp para finalizar la conexión. Si se produce un error durante la operación de conexión, el cliente debe llamar a RasHangUp aunque la conexión nunca se haya establecido.
La aplicación que llama a RasHangUp no debe salir inmediatamente porque el Administrador de conexiones de acceso remoto necesita tiempo para finalizar correctamente la conexión. En su lugar, la aplicación debe esperar hasta que la función RasGetConnectStatus devuelva ERROR_INVALID_HANDLE, lo que indica que se ha eliminado la conexión.
Es posible que una aplicación cliente RAS necesite finalizar una conexión aunque no tenga el identificador devuelto por RasDial. Por ejemplo, la aplicación que llamó a RasDial podría haberse salido después de que la conexión se haya establecido correctamente. En este caso, la aplicación de desconexión puede usar la función RasEnumConnections para obtener todas las conexiones actuales. Para cada conexión, RasEnumConnections devuelve una estructura RASCONN que contiene el identificador de conexión HRASCONN y el nombre de entrada de la libreta de teléfonos o el número de teléfono especificados cuando se inició la operación de conexión. Esta información se puede usar para mostrar una lista de conexiones desde las que el usuario puede seleccionar la conexión al final.