Slik løser du en eksisterende forbindelse ble tvangsstengt av den eksterne verten & rsquo; Feil?

En ekstern datamaskin er den som ikke har fysisk tilstedeværelse; det kan bare nås via en slags datanettverk. Fjernverten er datamaskinen som er vert for nettverket som er vert for den eksterne datamaskinen, og den eksterne klienten er brukeren av den eksterne klienten i nettverket. Denne funksjonen har revolusjonert mange prosesser og har et stort omfang også i fremtiden.

Imidlertid har det ganske nylig kommet mange rapporter om en " en eksisterende forbindelse ble tvangsstengt av den eksterne verten " -feilen mens de prøvde å koble til den eksterne verten. Denne feilen utløses med en stikkontaktforbindelse mellom en klient og en server. I denne artikkelen vil vi tilby noen levedyktige løsninger for å fullstendig rette opp denne feilen, og også informere deg om årsakene som utløser denne feilen.

Hva forårsaker feilen 'En eksisterende tilkobling ble tvangsstengt av den eksterne verten' i Windows?

Etter å ha mottatt mange rapporter fra flere brukere, bestemte vi oss for å undersøke problemet og utviklet et sett med løsninger for å fikse det. Vi så også på årsakene til at den utløses, og listet dem opp nedenfor.

  • TLS 1.1 / 1.0 Bruk: Hvis applikasjonen kjører på TLS 1.1 eller TLS 1.0, kan det utløse denne feilen på grunn av at de avskrives. TLS 1.2 er veien å gå når du velger protokollen som applikasjonen bruker.
  • Kryptografi deaktivert: Hvis kryptografi er deaktivert for maskinen din, vil det forhindre bruk av TLS 1.2 og vil falle tilbake på TLS 1.0 som kan utløse feilen.
  • Socket Implementation: I noen tilfeller utløser en bestemt type socketimplementering feilen. Det er en feil med noen implementeringer av “.NET” -programmet, og det kan forårsake denne feilen.
  • Manglende kode: For noen mennesker som brukte Entity Framework, ble det observert at en viss kodelinje manglet på grunn av hvilken feilen ble utløst.
  • Utdatert ".NET" Framework: I visse tilfeller, hvis ".NET" Framework er deaktivert, kan denne feilen utløses. Enkelte oppgaver krever at .NET-rammeverket oppdateres til den nyeste versjonen for at de skal fungere skikkelig.

Nå som du har en grunnleggende forståelse av problemets natur, vil vi gå videre mot løsningene. Sørg for å implementere disse i den spesifikke rekkefølgen de presenteres i for å unngå konflikter.

Løsning 1: Aktivere kryptografi

Hvis kryptografi er deaktivert for maskinen din, er bruk av TLS 1.2 forbudt. Derfor vil vi i dette trinnet aktivere kryptografi. For det:

  1. Trykk “ Windows ” + “ R ” for å åpne Kjør-ledeteksten.
  2. Skriv inn “regedit” og trykk “ Enter ”.
  3. Naviger til følgende adresse
    HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ v4.0.3031

    Naviger til denne adressen hvis det ikke er noen “ SchUseStrongCrypto ” -verdi i høyre rute.

    HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NETFramework \ v4.0.30319
  4. Dobbeltklikk på “ SchUseStrongCrypto ” -alternativet i høyre rute og skriv inn “ 1 ” som verdidata.
  5. Klikk på “ OK ” for å lagre endringene og sjekk om problemet vedvarer.

Løsning 2: Tvinge TLS 1.2-bruk

Hvis applikasjonen er konfigurert til å bruke TLS 1.1 eller TLS 1.0 i stedet for TLS 1.2, kan det utløse denne feilen. Derfor vil vi i dette trinnet konfigurere datamaskinen vår til å bruke TLS 1.2. For det:

  1. Naviger til roten til nettstedet og høyreklikk på "global.asax" -filen.
  2. Velg " Vis kode " fra listen.
  3. Det skal være en " Application_Start " -metode, legg til følgende kodelinje til den metoden
    hvis (ServicePointManager. SecurityProtocol. HasFlag (SecurityProtocolType. Tls12) == false) SecurityProtocolType. Tls12;              
  4. Lagre endringene og sjekk om problemet vedvarer.

Løsning 3: Endring av sokkelimplementering

Hvis en bestemt sokkelimplementering har en feil eller feil, kan det forhindre at enkelte elementer i applikasjonen fungerer som de skal. Feilen kan utløses. Derfor vil vi i dette trinnet konfigurere den til å bruke en annen implementering. For det:

  1. Forsikre deg om at du har en “ StateObjec t” -klasse med “ offentlig byte [] buffer = ny byte [1024], offentlig stikkontakt; “.
  2. Kall funksjonen " Motta (stikkontakter) " og ring følgende kode i " ugyldig ReceiveCallback (IAsyncResult ar) "
     SocketError errorCode ; int nBytesRec = socket . EndReceive ( ar , out errorCode ); if ( errorCode != SocketError . Success ) { nBytesRec = 0 ; } 
  3. Sjekk om problemet vedvarer etter implementering av denne koden.

Løsning 4: Legge til kommandolinjer (bare for Entity Framework)

Hvis du bruker Entity Framework, er det mulig at en bestemt kodelinje mangler. Derfor vil vi i dette trinnet legge til den kodelinjen for å løse dette problemet. For det:

  1. Åpne “ .edmx ” filen og åpne “ .context.tt ” filen under den.
  2. Åpne " .context.cs " -filen og legg til følgende kodelinje til konstruktøren din
     public DBEntities () : base ( "name=DBEntities" ) { this . Configuration . ProxyCreationEnabled = false ; // ADD THIS LINE ! } 
  3. Sjekk om problemet vedvarer etter at du har lagt til denne kodelinjen.

Løsning 5: Oppdaterer .NET Framework

Den siste versjonen av “.NET” Framework kreves for at alt skal fungere greit. Derfor vil vi i dette trinnet laste ned den nyeste versjonen fra nettstedet og installere den. For det:

  1. Naviger til denne lenken for å laste ned oppsettet.
  2. Utfør " .exe " -filen for å starte installasjonsprosessen.
  3. Følg instruksjonene på skjermen for å installere programmet på datamaskinen.
  4. Kontroller om problemet vedvarer etter at installasjonen er fullført.

Anbefalt

Fix: Minecraft svarer ikke
Hva er Digital TV Tuner Device Application Application og bør det fjernes?
Hva er FileRepMalware og bør du fjerne det