Come risolvere & lsquo; Una connessione esistente è stata chiusa forzatamente dall'host remoto & rsquo; Errore?

Un computer remoto è quello che non ha presenza fisica; è possibile accedervi solo attraverso una sorta di rete di computer. L'host remoto è il computer che ospita la rete che ospita il computer remoto e il client remoto è l'utente del client remoto sulla rete. Questa funzione ha rivoluzionato molti processi e ha una grande portata anche in futuro.

Tuttavia, di recente, sono arrivate molte segnalazioni di un errore " una connessione esistente è stata chiusa forzatamente dall'host remoto " durante il tentativo di connessione all'host remoto. Questo errore viene attivato con una connessione socket tra un client e un server. In questo articolo, forniremo alcune soluzioni praticabili per correggere completamente questo errore e ti informeremo anche dei motivi che attivano questo errore.

Che cosa causa l'errore "Una connessione esistente è stata chiusa forzatamente dall'host remoto" in Windows?

Dopo aver ricevuto numerose segnalazioni da più utenti, abbiamo deciso di indagare sul problema e ideato una serie di soluzioni per risolverlo. Inoltre, abbiamo esaminato i motivi per cui è stato attivato e li abbiamo elencati di seguito.

  • Utilizzo di TLS 1.1 / 1.0: se l'applicazione è in esecuzione su TLS 1.1 o TLS 1.0, potrebbe attivare questo errore a causa dell'ammortamento. TLS 1.2 è la strada da percorrere quando si seleziona il protocollo utilizzato dall'applicazione.
  • Crittografia disabilitata: se la crittografia è stata disabilitata per la tua macchina, impedirà l'utilizzo di TLS 1.2 e tornerà su TLS 1.0 che potrebbe attivare l'errore.
  • Implementazione del socket: in alcuni casi, un particolare tipo di implementazione del socket attiva l'errore. C'è un bug con alcune implementazioni dall'applicazione ".NET" e potrebbe causare questo errore.
  • Codice mancante: per alcune persone che utilizzavano Entity Framework, è stato osservato che mancava una certa riga di codice a causa della quale veniva attivato l'errore.
  • Framework ".NET" obsoleto: in alcuni casi, se il Framework ".NET" è stato disabilitato, questo errore potrebbe essere attivato. Alcune attività richiedono l'aggiornamento del framework ".NET" alla versione più recente affinché possano funzionare correttamente.

Ora che hai una comprensione di base della natura del problema, passeremo alle soluzioni. Assicurati di implementarli nell'ordine specifico in cui sono presentati per evitare conflitti.

Soluzione 1: abilitare la crittografia

Se la crittografia è stata disabilitata per la tua macchina, l'utilizzo di TLS 1.2 è proibito. Pertanto, in questo passaggio, abiliteremo la crittografia. Per quello:

  1. Premere " Windows " + " R " per aprire il prompt Esegui.
  2. Digita "regedit" e premi " Invio ".
  3. Vai al seguente indirizzo
    HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ v4.0.3031

    Passare a questo indirizzo se non è presente il valore " SchUseStrongCrypto " nel riquadro di destra.

    HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NETFramework \ v4.0.30319
  4. Nel riquadro di destra, fare doppio clic sull'opzione " SchUseStrongCrypto " e immettere " 1 " come Dati valore.
  5. Fare clic su " OK " per salvare le modifiche e verificare se il problema persiste.

Soluzione 2: forzare l'utilizzo di TLS 1.2

Se l'applicazione è stata configurata per utilizzare TLS 1.1 o TLS 1.0 invece di TLS 1.2, potrebbe attivare questo errore. Pertanto, in questo passaggio, configureremo il nostro computer per utilizzare TLS 1.2. Per quello:

  1. Vai alla radice del sito e fai clic con il pulsante destro del mouse sul file "global.asax" .
  2. Seleziona " Visualizza codice " dall'elenco.
  3. Dovrebbe esserci un metodo " Application_Start ", aggiungere la seguente riga di codice a quel metodo
    if (ServicePointManager. SecurityProtocol. HasFlag (SecurityProtocolType. Tls12) == false) SecurityProtocolType. Tls12;              
  4. Salva le modifiche e controlla se il problema persiste.

Soluzione 3: modifica dell'implementazione del socket

Se una certa implementazione del socket ha un bug o un glitch, potrebbe impedire il corretto funzionamento di alcuni elementi dell'applicazione a causa del quale questo errore potrebbe essere attivato. Pertanto, in questo passaggio, lo configureremo per utilizzare un'implementazione diversa. Per quello:

  1. Assicurati di avere una classe " StateObjec t" con " public byte [] buffer = nuovo byte [1024], public Socket socket; “.
  2. Chiama la funzione " Receive (Socket s) " e chiama il codice seguente in " void ReceiveCallback (IAsyncResult ar) "
     SocketError errorCode ; int nBytesRec = socket . EndReceive ( ar , out errorCode ); if ( errorCode != SocketError . Success ) { nBytesRec = 0 ; } 
  3. Verifica se il problema persiste dopo aver implementato questo codice.

Soluzione 4: aggiunta di righe di comando (solo per Entity Framework)

Se stai usando Entity Framework, è possibile che manchi una certa riga di codice. Pertanto, in questo passaggio, aggiungeremo quella riga di codice per risolvere questo problema. Per quello:

  1. Apri il tuo file " .edmx " e apri il file " .context.tt " sotto di esso.
  2. Apri il file " .context.cs " e aggiungi la seguente riga di codice al tuo costruttore
     public DBEntities () : base ( "name=DBEntities" ) { this . Configuration . ProxyCreationEnabled = false ; // ADD THIS LINE ! } 
  3. Verifica se il problema persiste dopo aver aggiunto questa riga di codice.

Soluzione 5: aggiornamento di .NET Framework

È necessaria l'ultima versione di ".NET" Framework affinché tutto funzioni senza problemi. Pertanto, in questo passaggio, scaricheremo l'ultima versione dal sito e la installeremo. Per quello:

  1. Accedi a questo collegamento per scaricare la configurazione.
  2. Eseguire il file " .exe " per avviare il processo di installazione.
  3. Segui le istruzioni sullo schermo per installare l'applicazione sul tuo computer.
  4. Verifica se il problema persiste dopo aver completato l'installazione.

Raccomandato

Correzione: Minecraft non rispondeva
Che cos'è l'applicazione di registrazione del dispositivo del sintonizzatore TV digitale e deve essere rimossa?
Cos'è FileRepMalware e dovresti rimuoverlo