🇬🇧 | 🇩🇪 | 🇫🇷 | 🇪🇸 | 🇨🇳 | 🇸🇦
Nous n'avons pas de DLL mais nous avons:
L'analyseur de fichiers Windows et l'antivirus rapide en ligne

Une interface minimaliste avec une recherche rapide, un téléchargement pratique et une structure de section propre.

🛡️🔍 Vérifiez rapidement votre dossier, cliquez sur cette page.
Vérifier les virus, les hachages, vérifier les signets, l'architecture, les informations sur l'IA.

Erreur Windows: le client WinRM Shell ne peut pas traiter la requête

Description de l'erreur

This error occurs when a Windows Remote Management (WinRM) session fails to receive output data from a remote machine. The specific function WSMansReceiveShellOutput s'attend à ce que des variables valides soient utilisées pour traiter le flux de données. Si une interruption du réseau, un débordement de tampon, une inadéquation de la taille des données ou une corruption survient pendant la transmission, le paramètre requis devient nul ou nul, ce qui provoque l'échec du client WinRM et l'interruption de l'opération. Il est généralement déclenché lors de scripts longs, de transferts de données lourds ou lorsqu'il y a une incompatibilité dans les configurations de taille de paquet PowerShell / WinRM entre les machines locales et distantes.


Réparations étape par étape

Follow these solutions step-by-step to resolve the issue. You must run these commands on both the client (your machine) and the server (remote machine) sauf indication contraire.

Solution 1: Augmenter le WinRM MaxEnvelopeSizeKB

La cause la plus fréquente est que les données renvoyées dépassent la taille maximale par défaut des paquets autorisée par WinRM.

  1. Cliquez sur le Start menu, type cmd, cliquez avec le bouton droit. Command Prompt, et sélectionnez Run as administrator.
  2. Vérifiez la taille maximale de l'enveloppe actuelle en exécutant cette commande:
    winrm get winrm/config
  3. Augmenter la taille de l'enveloppe sur le client et les machines distantes pour permettre des paquets de données plus volumineux (par exemple, le changer à 8192 KB):
    winrm set winrm/config @{MaxEnvelopeSizeKB="8192"}
  4. Redémarrez le service WinRM pour appliquer les modifications:
    net stop winrm
    net start winrm

Solution 2: Augmenter le fournisseur WSMan MaxMemoryPerShellMB

Si le shell distant est à court de mémoire allouée pendant le traitement de la sortie, les paramètres de la fonction échouent.

  1. Ouvrez. PowerShell as an Administrator.
  2. Vérifiez la limite de mémoire actuelle par shell en exécutant:
    Get-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB
  3. Augmentez la limite de mémoire à 2048 Mo (ou plus selon les ressources de votre système) pour éviter les états hors mémoire:
    Set-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB 2048
  4. Redémarrez le service WinRM pour engager la configuration:
    Restart-Service winrm

Solution 3: Modifier le tampon de sortie dans votre script PowerShell

Si l'erreur se produit pendant une commande ou un script spécifique, le flux de sortie peut être accablant le pipeline. Vous pouvez forcer la commande à traiter la sortie en petits lots ou effacer le tampon.

  1. Ouvrez votre script et localisez la commande à l'origine de l'erreur.
  2. Je vous en supplie. | Out-Buffer -Count 1 à la commande pour forcer le traitement immédiat de chaque ligne de données au lieu de mettre en cache un grand lot. Exemple:
    Get-WinEvent -LogName Application | Out-Buffer -Count 1
  3. Alternativement, si vous n'avez pas besoin des flux de sortie détaillés, redirigez les erreurs et les sorties verbeuses vers null:
    Your-Command-Here 2>$null 3>null 4>null

Solution 4: Réinitialiser et reconfigurer les paramètres WinRM

Si les paramètres de configuration sont corrompus, réinitialiser l'architecture WinRM aux paramètres par défaut peut résoudre les problèmes cachés.

  1. Ouvrez. Command Prompt as an administrator.
  2. Désactiver complètement la configuration de l'écoutant WinRM:
    winrm invoke ResetListener winrm/config/listener?Address=*+Transport=HTTP
  3. Réinitialisez l' assistant de configuration rapide pour réparer les endpoints et les règles du pare-feu:
    winrm quickconfig -q
ERROR_WINRS_CLIENT_FREERUNCOMMANDRESULT_NULL_PARAM | ERROR_WINRS_CLIENT_SIGNAL_NULL_PARAM | ERROR_WINRS_CLIENT_FREEPULLRESULT_NULL_PARAM | ERROR_WINRS_CLIENT_PULL_NULL_PARAM | ERROR_WINRS_CLIENT_CLOSERECEIVEHANDLE_NULL_PARAM

Il y a peut-être des erreurs.. Learn Microsoft