Comment réparer & lsquo; Une connexion existante a été fermée de force par l'hôte distant & rsquo; Erreur?

Un ordinateur distant est celui qui n'a pas de présence physique; il n'est accessible que par une sorte de réseau informatique. L'hôte distant est l'ordinateur hébergeant le réseau qui héberge l'ordinateur distant et le client distant est l'utilisateur du client distant sur le réseau. Cette fonctionnalité a révolutionné de nombreux processus et a également une grande portée à l'avenir.

Cependant, tout récemment, de nombreux rapports ont fait état d'une erreur « une connexion existante a été fermée de force par l'hôte distant » lors de la tentative de connexion à l'hôte distant. Cette erreur est déclenchée par une connexion socket entre un client et un serveur. Dans cet article, nous vous proposerons des solutions viables pour rectifier complètement cette erreur et vous informerons également des raisons qui déclenchent cette erreur.

Quelles sont les causes de l'erreur «Une connexion existante a été fermée de force par l'hôte distant» dans Windows?

Après avoir reçu de nombreux rapports de plusieurs utilisateurs, nous avons décidé d'étudier le problème et avons conçu un ensemble de solutions pour le résoudre. En outre, nous avons examiné les raisons pour lesquelles il est déclenché et les avons énumérées ci-dessous.

  • Utilisation de TLS 1.1 / 1.0: Si l'application s'exécute sur TLS 1.1 ou TLS 1.0, cela peut déclencher cette erreur en raison de leur dépréciation. TLS 1.2 est la voie à suivre pour sélectionner le protocole utilisé par l'application.
  • Cryptographie désactivée: si la cryptographie a été désactivée pour votre machine, elle empêchera l'utilisation de TLS 1.2 et retombera sur TLS 1.0, ce qui pourrait déclencher l'erreur.
  • Implémentation de socket: dans certains cas, un type particulier d'implémentation de socket déclenche l'erreur. Il y a un bogue avec certaines implémentations par l'application «.NET» et cela peut provoquer cette erreur.
  • Code manquant: pour certaines personnes qui utilisaient Entity Framework, il a été observé qu'une certaine ligne de code manquait en raison de laquelle l'erreur était déclenchée.
  • Framework «.NET» obsolète: dans certains cas, si le framework «.NET» a été désactivé, cette erreur peut être déclenchée. Certaines tâches nécessitent la mise à jour du framework «.NET» vers la dernière version afin de fonctionner correctement.

Maintenant que vous avez une compréhension de base de la nature du problème, nous allons passer aux solutions. Assurez-vous de les mettre en œuvre dans l'ordre spécifique dans lequel ils sont présentés pour éviter les conflits.

Solution 1: activer la cryptographie

Si la cryptographie a été désactivée pour votre machine, l'utilisation de TLS 1.2 est interdite. Par conséquent, dans cette étape, nous activerons la cryptographie. Pour ça:

  1. Appuyez sur " Windows " + " R " pour ouvrir l'invite Exécuter.
  2. Tapez "regedit" et appuyez sur " Entrée ".
  3. Accédez à l'adresse suivante
    HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ v4.0.3031

    Accédez à cette adresse s'il n'y a pas de valeur « SchUseStrongCrypto » dans le volet droit.

    HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NETFramework \ v4.0.30319
  4. Dans le volet de droite, double-cliquez sur l' option « SchUseStrongCrypto » et entrez « 1 » comme données de valeur.
  5. Cliquez sur « OK » pour enregistrer vos modifications et vérifier si le problème persiste.

Solution 2: forcer l'utilisation de TLS 1.2

Si l'application a été configurée pour utiliser TLS 1.1 ou TLS 1.0 au lieu de TLS 1.2, elle peut déclencher cette erreur. Par conséquent, dans cette étape, nous allons configurer notre ordinateur pour utiliser TLS 1.2. Pour ça:

  1. Accédez à la racine du site et faites un clic droit sur le fichier «global.asax» .
  2. Sélectionnez « Afficher le code » dans la liste.
  3. Il devrait y avoir une méthode « Application_Start », ajoutez la ligne de code suivante à cette méthode
    if (ServicePointManager. SecurityProtocol. HasFlag (SecurityProtocolType. Tls12) == false) SecurityProtocolType. Tls12;              
  4. Enregistrez vos modifications et vérifiez si le problème persiste.

Solution 3: modification de l'implémentation du socket

Si une certaine implémentation de socket a un bogue ou un problème, cela peut empêcher certains éléments de l'application de fonctionner correctement en raison de laquelle cette erreur pourrait être déclenchée. Par conséquent, dans cette étape, nous allons le configurer pour utiliser une implémentation différente. Pour ça:

  1. Assurez-vous d'avoir une classe « StateObjec t» avec « public byte [] buffer = new byte [1024], public Socket socket; «.
  2. Appelez la fonction " Receive (Socket s) " et appelez le code suivant dans " void ReceiveCallback (IAsyncResult ar) "
     SocketError errorCode ; int nBytesRec = socket . EndReceive ( ar , out errorCode ); if ( errorCode != SocketError . Success ) { nBytesRec = 0 ; } 
  3. Vérifiez si le problème persiste après l'implémentation de ce code.

Solution 4: Ajout de lignes de commande (uniquement pour Entity Framework)

Si vous utilisez Entity Framework, il est possible qu'une certaine ligne de code soit manquante. Par conséquent, dans cette étape, nous ajouterons cette ligne de code afin de résoudre ce problème. Pour ça:

  1. Ouvrez votre fichier « .edmx » et ouvrez le fichier « .context.tt » en dessous.
  2. Ouvrez le fichier « .context.cs » et ajoutez la ligne de code suivante à votre constructeur
     public DBEntities () : base ( "name=DBEntities" ) { this . Configuration . ProxyCreationEnabled = false ; // ADD THIS LINE ! } 
  3. Vérifiez si le problème persiste après l'ajout de cette ligne de code.

Solution 5: mise à jour de .NET Framework

La dernière version du «.NET» Framework est nécessaire pour que tout fonctionne correctement. Par conséquent, dans cette étape, nous téléchargerons la dernière version du site et l'installerons. Pour ça:

  1. Accédez à ce lien pour télécharger la configuration.
  2. Exécutez le fichier « .exe » pour démarrer le processus d'installation.
  3. Suivez les instructions à l'écran pour installer l'application sur votre ordinateur.
  4. Vérifiez si le problème persiste une fois l'installation terminée.

Recommandé

Correction: Minecraft ne répond pas
Qu'est-ce que l'application d'enregistrement de périphérique de tuner TV numérique et doit-elle être supprimée?
Qu'est-ce que FileRepMalware et devez-vous le supprimer?