Hoe te repareren ‘Een bestaande verbinding werd gedwongen verbroken door de externe host’ -fout?

Een externe computer is een computer die niet fysiek aanwezig is; het is alleen toegankelijk via een soort computernetwerk. De externe host is de computer die als host fungeert voor het netwerk dat als host fungeert voor de externe computer en de externe client is de gebruiker van de externe client op het netwerk. Deze functie heeft voor veel processen een revolutie teweeggebracht en heeft ook in de toekomst een grote reikwijdte.

Vrij recentelijk zijn er echter veel rapporten binnengekomen van een "een bestaande verbinding is met geweld verbroken door de externe host”-fout tijdens het proberen verbinding te maken met de externe host. Deze fout treedt op bij een socketverbinding tussen een client en een server. In dit artikel zullen we enkele haalbare oplossingen bieden om deze fout volledig te verhelpen en u ook informeren over de redenen die deze fout veroorzaken.

Wat zijn de oorzaken van de fout 'Een bestaande verbinding is gedwongen verbroken door de externe host' in Windows?

Nadat we talloze rapporten van meerdere gebruikers hadden ontvangen, besloten we het probleem te onderzoeken en een reeks oplossingen te bedenken om het op te lossen. We hebben ook gekeken naar de redenen waardoor het wordt geactiveerd en hebben ze hieronder vermeld.

Nu u een basiskennis heeft van de aard van het probleem, gaan we verder met de oplossingen. Zorg ervoor dat u deze implementeert in de specifieke volgorde waarin ze worden gepresenteerd om conflicten te voorkomen.

Oplossing 1: cryptografie inschakelen

Als cryptografie is uitgeschakeld voor uw machine, is het gebruik van TLS 1.2 verboden. Daarom zullen we in deze stap cryptografie inschakelen. Daarom:

  1. Druk op "ramen” + “R.”Om de prompt Uitvoeren te openen.
  2. Typ in "Regedit" en druk op "Enter“.
  3. Navigeer naar het volgende adres
    HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ v4.0.3031

    Navigeer naar dit adres als er geen 'SchUseStrongCrypto”Waarde in het rechterdeelvenster.

    HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NETFramework \ v4.0.30319
  4. Dubbelklik in het rechterdeelvenster op de “SchGebruikSterkCrypto"Optie en voer"1”Als Waardegegevens.
  5. Klik op "OK”Om uw wijzigingen op te slaan en controleren om te zien of het probleem aanhoudt.

Oplossing 2: TLS 1.2-gebruik afdwingen

Als de toepassing is geconfigureerd om TLS 1.1 of TLS 1.0 te gebruiken in plaats van TLS 1.2, kan deze fout optreden. Daarom zullen we in deze stap onze computer configureren om TLS 1.2 te gebruiken. Daarom:

  1. Navigeer naar de root van de site en klik met de rechtermuisknop op het "Global.asax" het dossier.
  2. Selecteer 'Visie Code" van de lijst.
  3. Er zou een "Application_Start”, Voeg dan de volgende regel code toe aan die methode
    if (ServicePointManager.SecurityProtocol.HasFlag(SecurityProtocolType.Tls12) == false) { ServicePointManager.SecurityProtocol = ServicePointManager.SecurityProtocol | SecurityProtocolType.Tls12; }
  4. Sparen uw wijzigingen en controleren om te zien of het probleem aanhoudt.

Oplossing 3: de implementatie van de socket wijzigen

Als een bepaalde socketimplementatie een bug of glitch bevat, kan dit ervoor zorgen dat bepaalde elementen van de applicatie niet correct werken, waardoor deze fout kan worden geactiveerd. Daarom zullen we het in deze stap configureren om een ​​andere implementatie te gebruiken. Daarom:

  1. Zorg ervoor dat u een "StateObject "klasse met"openbare byte [] buffer = nieuwe byte [1024], openbare socketcontactdoos;“.
  2. Bel de "Ontvangen (stopcontacten)"Functie en roep de volgende code in"ongeldig ReceiveCallback (IAsyncResult ar)
     SocketError errorCode; int nBytesRec = socket.EndReceive (ar, out errorCode); if (errorCode! = SocketError.Success) {nBytesRec = 0; }
  3. Controleer of het probleem zich blijft voordoen nadat u deze code hebt geïmplementeerd.

Oplossing 4: opdrachtregels toevoegen (alleen voor Entity Framework)

Als u het Entity Framework gebruikt, is het mogelijk dat een bepaalde regel code ontbreekt. Daarom zullen we in deze stap die regel code toevoegen om dit probleem op te lossen. Daarom:

  1. Open je ".edmx"Bestand en open het".context.tt”Bestand eronder.
  2. Open de ".context.cs”Bestand en voeg de volgende regel code toe aan uw constructor
    openbare DBEntities (): base ("naam = DBEntities") {this.Configuration.ProxyCreationEnabled = false; // VOEG DEZE LIJN TOE! }
  3. Controleer of het probleem zich blijft voordoen nadat u deze regel code hebt toegevoegd.

Oplossing 5: .NET Framework bijwerken

De laatste versie van het “.NET” Framework is vereist om alles soepel te laten functioneren. Daarom zullen we in deze stap de nieuwste versie van de site downloaden en deze installeren. Daarom:

  1. Navigeer naar deze link om de installatie te downloaden.
  2. Voer de ".exe”-Bestand om het installatieproces te starten.
  3. Volgen de instructies op het scherm om de applicatie op uw computer te installeren.
  4. Controleren om te zien of het probleem zich blijft voordoen nadat de installatie is voltooid.
Facebook Twitter Google Plus Pinterest