Cum să remediați „O conexiune existentă a fost închisă cu forța de eroarea gazdei la distanță?

Un computer la distanță este cel care nu are prezență fizică; acesta poate fi accesat doar printr-un fel de rețea de calculatoare. Remote Host este computerul care găzduiește rețeaua care găzduiește computerul la distanță, iar clientul la distanță este utilizatorul clientului la distanță din rețea. Această caracteristică a revoluționat o mulțime de procese și are o perspectivă mare și în viitor.

O conexiune existentă a fost închisă cu forța de eroarea gazdă locală

Cu toate acestea, destul de recent, o mulțime de rapoarte au apărut despre o eroare „ o conexiune existentă a fost închisă forțat de gazda la distanță ” în timp ce încercați să vă conectați la gazda de la distanță. Această eroare este declanșată cu o conexiune socket între un client și un server. În acest articol, vom oferi câteva soluții viabile pentru a rectifica complet această eroare și vă vom informa, de asemenea, despre motivele care declanșează această eroare.

Care este cauza erorii „O conexiune existentă a fost închisă cu forța de gazda la distanță” în Windows?

După ce am primit numeroase rapoarte de la mai mulți utilizatori, am decis să investigăm problema și am conceput un set de soluții pentru remedierea acesteia. De asemenea, am analizat motivele pentru care este declanșat și le-am enumerat mai jos.

  • Utilizare TLS 1.1 / 1.0: Dacă aplicația rulează pe TLS 1.1 sau TLS 1.0, ar putea declanșa această eroare, deoarece acestea sunt depreciate. TLS 1.2 este calea de urmat atunci când selectați protocolul pe care îl folosește aplicația.
  • Criptografie dezactivată: Dacă Cryptografia a fost dezactivată pentru aparatul dvs., aceasta va preveni utilizarea TLS 1.2 și va reveni pe TLS 1.0, ceea ce ar putea declanșa eroarea.
  • Socket Implementation: în unele cazuri, un anumit tip de implementare de socket declanșează eroarea. Există o eroare cu unele implementări ale aplicației „.NET” și ar putea cauza această eroare.
  • Cod lipsă: pentru unele persoane care foloseau cadrul de entitate, s-a observat că lipsește o anumită linie de cod din cauza căreia era declanșată eroarea.
  • Cadru „.NET” învechit: În anumite cazuri, dacă Cadrul „.NET” a fost dezactivat, această eroare ar putea fi declanșată. Anumite sarcini necesită actualizarea cadrului „.NET” la cea mai recentă versiune pentru ca acestea să funcționeze corect.

Acum că aveți o înțelegere de bază a naturii problemei, vom merge mai departe către soluții. Asigurați-vă că le implementați în ordinea specifică în care sunt prezentate pentru a evita conflictele.

Soluția 1: Activarea criptografiei

Dacă Criptografia a fost dezactivată pentru aparatul dvs., utilizarea TLS 1.2 este interzisă. Prin urmare, în acest pas, vom activa criptografia. Pentru asta:

  1. Apăsați „ Windows ” + „ R ” pentru a deschide promptul Run.
  2. Tastați „regedit” și apăsați „ Enter ”.

    Tastați „Regedit” și apăsând „Enter”
  3. Navigați la următoarea adresă
     HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ v4.0.3031 

    Navigați la această adresă dacă nu există nicio valoare „ SchUseStrongCrypto ” în panoul din dreapta.

     HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NETFramework \ v4.0.30319 
  4. În panoul din dreapta, faceți dublu clic pe opțiunea „ SchUseStrongCrypto ” și introduceți „ 1 ” ca date de valoare.

    Faceți dublu clic pe valoarea „SchUseStrongCrypto” din panoul din dreapta
  5. Faceți clic pe „ OK ” pentru a salva modificările și verificați dacă problema persistă.

Soluția 2: Forțarea utilizării TLS 1.2

Dacă aplicația a fost configurată pentru a utiliza TLS 1.1 sau TLS 1.0 în loc de TLS 1.2, ar putea declanșa această eroare. Prin urmare, în acest pas, vom configura computerul nostru pentru a utiliza TLS 1.2. Pentru asta:

  1. Navigați la rădăcina site-ului și faceți clic dreapta pe fișierul „global.asax” .
  2. Selectați „ View Code ” din listă.
  3. Ar trebui să existe o metodă „ Application_Start ”, adăugați următoarea linie de cod la acea metodă
     if (ServicePointManager. SecurityProtocol. HasFlag (SecurityProtocolType. Tls12) == false) ServicePointManager. SecurityProtocol = ServicePointManager. SecurityProtocol 

    Adăugarea liniilor la cod
  4. Salvați- vă modificările și verificați dacă problema persistă.

Soluția 3: Modificarea implementării Socket

Dacă o anumită implementare de socket are o eroare sau un glitch în ea, ar putea împiedica anumite elemente ale aplicației să funcționeze corect datorită cărora ar putea fi declanșată această eroare. Prin urmare, în acest pas, îl vom configura pentru a utiliza o altă implementare. Pentru asta:

  1. Asigurați-vă că aveți o clasăStateObjec t” cu „ public byte [] buffer = new byte [1024], socket public; „.
  2. Apelați funcția „ Receive (Socket s) ” și apelați următorul cod în „ void ReceiveCallback (IAsyncResult ar)
      SocketError errorCode ; int nBytesRec = socket . EndReceive ( ar, out errorCode ); if ( errorCode != SocketError . Success ) { nBytesRec = 0 ; } 
  3. Verificați dacă problema persistă după implementarea acestui cod.

Soluția 4: Adăugarea liniilor de comandă (numai pentru Entity Framework)

Dacă utilizați Framework Entity, este posibil să lipsească o anumită linie de cod. Prin urmare, în acest pas, vom adăuga acea linie de cod pentru a remedia această problemă. Pentru asta:

  1. Deschideți fișierul „ .edmx ” și deschideți fișierul „ .context.tt ” de sub acesta.
  2. Deschide fișierul „ .context.cs ” și adaugă următoarea linie de cod la constructorul tău
      public DBEntities () : base ( "name=DBEntities" ) { this . Configuration . ProxyCreationEnabled = false ; // ADD THIS LINE ! } 
  3. Verificați dacă problema persistă după adăugarea acestei linii de cod.

Soluția 5: Actualizarea .NET Framework

Cea mai recentă versiune a „.NET” Framework este necesară pentru ca totul să funcționeze fără probleme. Prin urmare, în acest pas, vom descărca cea mai recentă versiune de pe site și o vom instala. Pentru asta:

  1. Accesați acest link pentru a descărca configurația.
  2. Executați fișierul „ .exe ” pentru a începe procesul de instalare.

    Rularea executabilului descărcat de la Microsoft
  3. Urmați instrucțiunile de pe ecran pentru a instala aplicația pe computer.
  4. Verificați dacă problema persistă după terminarea instalării.

Articole Interesante