Funzione RasHangUpA (ras.h)

La funzione RasHangUp termina una connessione di accesso remoto. La connessione viene specificata con un handle di connessione RAS. La funzione rilascia tutte le risorse RASAPI32.DLL associate all'handle.

Sintassi

DWORD RasHangUpA(
  [in] HRASCONN unnamedParam1
);

Parametri

[in] unnamedParam1

Specifica la connessione di accesso remoto da terminare. Si tratta di un handle restituito da una chiamata precedente a RasDial o RasEnumConnections.

Valore restituito

Se la funzione ha esito positivo, il valore restituito viene ERROR_SUCCESS.

Se la funzione ha esito negativo, il valore restituito è uno dei codici di errore seguenti o un valore di Routing e Remote Access Error Codes o Winerror.h.

Valore Significato
ERROR_INVALID_HANDLE
L'handle specificato in hrasconn non è valido.

Commenti

La connessione viene terminata anche se la chiamata RasDial non è ancora stata completata.

Dopo questa chiamata, l'handle hrasconn non può più essere usato.

Un'applicazione non deve chiamare RasHangUp e quindi uscire immediatamente. La macchina a stati della connessione richiede tempo per terminare correttamente. Se il sistema termina prematuramente la macchina a stati, la macchina a stati può non riuscire a chiudere correttamente una porta, lasciando la porta in uno stato incoerente. Inoltre, un tentativo immediato di usare la stessa connessione potrebbe non riuscire lasciando la connessione inutilizzabile. Un modo semplice per evitare questi problemi è chiamare Sleep(3000) dopo il ritorno da RasHangUp; dopo tale pausa, l'applicazione può uscire. Un modo più reattivo per evitare questi problemi è, dopo la restituzione da RasHangUp, per chiamare RasGetConnectStatus(hrasconn) e Sleep(0) in un ciclo fino a quando RasGetConnectStatus non restituisce ERROR_INVALID_HANDLE.

È possibile chiamare RasHangUp sull'handle restituito da RasGetSubEntryHandle per terminare un singolo collegamento in una connessione a più collegamenti. Tuttavia, in questo caso, non è possibile usare RasGetConnectStatus per determinare se il collegamento è terminato; RasGetConnectStatus potrebbe non restituire ERROR_INVALID_HANDLE anche se il collegamento è stato terminato correttamente.

Nota

L'intestazione ras.h definisce RasHangUp come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione ras.h
Libreria Rasapi32.lib
DLL Rasapi32.dll

Vedi anche

RASCONN

RasCustomHangUp

RasDial

RasEnumConnections

RasGetConnectStatus

Panoramica del servizio accesso remoto (RAS)

Funzioni del Servizio di accesso remoto

Sospendi