Desconectando
Quando um aplicativo cliente RAS inicia uma operação de conexão, a chamada RasDial recebe um identificador de conexão HRASCONN para identificar a conexão. Se o identificador retornado não for NULL, o cliente deverá eventualmente chamar a função RasHangUp para encerrar a conexão. Se ocorrer um erro durante a operação de conexão, o cliente deverá chamar RasHangUp mesmo que a conexão nunca tenha sido estabelecida.
O aplicativo que chama RasHangUp não deve sair imediatamente porque o Gerenciador de Conexões de Acesso Remoto precisa de tempo para encerrar corretamente a conexão. Em vez disso, o aplicativo deve aguardar até que a função RasGetConnectStatus retorne ERROR_INVALID_HANDLE, indicando que a conexão foi excluída.
Um aplicativo cliente RAS pode precisar encerrar uma conexão, embora não tenha o identificador retornado pelo RasDial. Por exemplo, o aplicativo chamado RasDial pode ter sido encerrado depois que a conexão foi estabelecida com êxito. Nesse caso, o aplicativo de desconexão pode usar a função RasEnumConnections para obter todas as conexões atuais. Para cada conexão, RasEnumConnections retorna uma estrutura RASCONN que contém o identificador de conexão HRASCONN e o nome da entrada do catálogo telefônico ou o número de telefone especificado quando a operação de conexão foi iniciada. Essas informações podem ser usadas para exibir uma lista de conexões das quais o usuário pode selecionar a conexão até o final.