So beheben Sie & lsquo; Eine vorhandene Verbindung wurde vom Remote-Host zwangsweise geschlossen & rsquo; Error?

Ein entfernter Computer ist derjenige, der keine physische Präsenz hat. Der Zugriff ist nur über ein Computernetzwerk möglich. Der Remote-Host ist der Computer, auf dem sich das Netzwerk befindet, auf dem sich der Remote-Computer befindet, und der Remote-Client ist der Benutzer des Remote-Clients im Netzwerk. Diese Funktion hat viele Prozesse revolutioniert und hat auch in Zukunft einen großen Anwendungsbereich.

In jüngster Zeit sind jedoch viele Berichte über den Fehler " Eine vorhandene Verbindung wurde vom Remote-Host zwangsweise geschlossen " eingegangen, als versucht wurde, eine Verbindung zum Remote-Host herzustellen . Dieser Fehler wird bei einer Socket-Verbindung zwischen einem Client und einem Server ausgelöst. In diesem Artikel bieten wir einige praktikable Lösungen, um diesen Fehler vollständig zu beheben und Sie über die Gründe zu informieren, die diesen Fehler auslösen.

Was verursacht den Fehler "Eine vorhandene Verbindung wurde vom Remote-Host zwangsweise geschlossen" in Windows?

Nachdem wir zahlreiche Berichte von mehreren Benutzern erhalten hatten, beschlossen wir, das Problem zu untersuchen und eine Reihe von Lösungen zu entwickeln, um es zu beheben. Außerdem haben wir uns die Gründe angesehen, aus denen es ausgelöst wird, und sie unten aufgelistet.

  • TLS 1.1 / 1.0-Verwendung: Wenn die Anwendung unter TLS 1.1 oder TLS 1.0 ausgeführt wird, kann dieser Fehler ausgelöst werden, da sie abgeschrieben werden. TLS 1.2 ist der richtige Weg, wenn Sie das von der Anwendung verwendete Protokoll auswählen.
  • Kryptografie deaktiviert : Wenn die Kryptografie für Ihren Computer deaktiviert wurde, wird die Verwendung von TLS 1.2 verhindert und auf TLS 1.0 zurückgegriffen, wodurch der Fehler möglicherweise ausgelöst wird.
  • Socket-Implementierung: In einigen Fällen löst eine bestimmte Art der Socket-Implementierung den Fehler aus. Bei einigen Implementierungen der .NET-Anwendung ist ein Fehler aufgetreten, der diesen Fehler verursachen kann.
  • Fehlender Code: Bei einigen Personen, die das Entity Framework verwendeten, wurde festgestellt, dass eine bestimmte Codezeile fehlte, aufgrund derer der Fehler ausgelöst wurde.
  • Veraltetes ".NET" Framework: In bestimmten Fällen kann dieser Fehler ausgelöst werden, wenn das ".NET" Framework deaktiviert wurde. Für bestimmte Aufgaben muss das .NET-Framework auf die neueste Version aktualisiert werden, damit sie ordnungsgemäß funktionieren.

Nachdem Sie ein grundlegendes Verständnis der Art des Problems haben, werden wir uns den Lösungen zuwenden. Stellen Sie sicher, dass Sie diese in der angegebenen Reihenfolge implementieren, um Konflikte zu vermeiden.

Lösung 1: Aktivieren der Kryptografie

Wenn die Kryptografie für Ihren Computer deaktiviert wurde, ist die Verwendung von TLS 1.2 untersagt. Daher aktivieren wir in diesem Schritt die Kryptografie. Dafür:

  1. Drücken Sie " Windows " + " R ", um die Eingabeaufforderung "Ausführen" zu öffnen.
  2. Geben Sie „regedit“ ein und drücken Sie „ Enter „.
  3. Navigieren Sie zur folgenden Adresse
    HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ v4.0.3031

    Navigieren Sie zu dieser Adresse, wenn im rechten Bereich kein Wert für " SchUseStrongCrypto " vorhanden ist .

    HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NETFramework \ v4.0.30319
  4. Doppelklicken Sie im rechten Bereich auf die Option " SchUseStrongCrypto " und geben Sie " 1 " als Wertdaten ein .
  5. Klicken Sie auf " OK ", um Ihre Änderungen zu speichern und zu überprüfen , ob das Problem weiterhin besteht.

Lösung 2: Erzwingen der Verwendung von TLS 1.2

Wenn die Anwendung für die Verwendung von TLS 1.1 oder TLS 1.0 anstelle von TLS 1.2 konfiguriert wurde, wird dieser Fehler möglicherweise ausgelöst. Daher konfigurieren wir in diesem Schritt unseren Computer für die Verwendung von TLS 1.2. Dafür:

  1. Navigieren Sie zum Stammverzeichnis der Site und klicken Sie mit der rechten Maustaste auf die Datei "global.asax" .
  2. Wählen Sie " Code anzeigen " aus der Liste.
  3. Es sollte eine " Application_Start " -Methode geben. Fügen Sie dieser Methode die folgende Codezeile hinzu
    if (ServicePointManager. SecurityProtocol. HasFlag (SecurityProtocolType. Tls12) == false) SecurityProtocolType. Tls12;              
  4. Speichern Sie Ihre Änderungen und prüfen Sie , ob das Problem weiterhin besteht.

Lösung 3: Ändern der Socket-Implementierung

Wenn eine bestimmte Socket-Implementierung einen Fehler oder eine Panne aufweist, kann dies dazu führen, dass bestimmte Elemente der Anwendung nicht ordnungsgemäß funktionieren, wodurch dieser Fehler möglicherweise ausgelöst wird. Daher konfigurieren wir es in diesem Schritt für die Verwendung einer anderen Implementierung. Dafür:

  1. Stellen Sie sicher, dass Sie eine " StateObjec t" -Klasse mit " public byte [] buffer = new byte [1024], public Socket socket haben. “.
  2. Rufen Sie die Funktion " Receive (Socket s) " auf und rufen Sie den folgenden Code in " void ReceiveCallback (IAsyncResult ar) " auf.
     SocketError errorCode ; int nBytesRec = socket . EndReceive ( ar , out errorCode ); if ( errorCode != SocketError . Success ) { nBytesRec = 0 ; } 
  3. Überprüfen Sie, ob das Problem nach der Implementierung dieses Codes weiterhin besteht.

Lösung 4: Hinzufügen von Befehlszeilen (nur für Entity Framework)

Wenn Sie das Entity Framework verwenden, fehlt möglicherweise eine bestimmte Codezeile. Daher werden wir in diesem Schritt diese Codezeile hinzufügen, um dieses Problem zu beheben. Dafür:

  1. Öffnen Sie Ihre " .edmx " -Datei und öffnen Sie die " .context.tt " -Datei darunter.
  2. Öffnen Sie die Datei " .context.cs " und fügen Sie Ihrem Konstruktor die folgende Codezeile hinzu
     public DBEntities () : base ( "name=DBEntities" ) { this . Configuration . ProxyCreationEnabled = false ; // ADD THIS LINE ! } 
  3. Überprüfen Sie, ob das Problem nach dem Hinzufügen dieser Codezeile weiterhin besteht.

Lösung 5: Aktualisieren von .NET Framework

Die neueste Version des .NET Frameworks ist erforderlich, damit alles reibungslos funktioniert. Daher werden wir in diesem Schritt die neueste Version von der Site herunterladen und installieren. Dafür:

  1. Navigieren Sie zu diesem Link, um das Setup herunterzuladen.
  2. Führen Sie die Datei " .exe " aus, um den Installationsvorgang zu starten.
  3. Befolgen Sie die Anweisungen auf dem Bildschirm, um die Anwendung auf Ihrem Computer zu installieren.
  4. Überprüfen Sie nach Abschluss der Installation, ob das Problem weiterhin besteht.

Empfohlen

Fix: Minecraft reagiert nicht
Was ist eine Registrierungsanwendung für ein digitales TV-Tunergerät und sollte diese entfernt werden?
Was ist FileRepMalware und sollten Sie es entfernen?