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 |
---|---|
|
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
Panoramica del servizio accesso remoto (RAS)