🇬🇧 | 🇩🇪 | 🇫🇷 | 🇪🇸 | 🇨🇳 | 🇸🇦
No tenemos DLL pero tenemos:
Analista de archivos de Windows y antivirus rápido en línea

Una interfaz minimalista con búsqueda rápida, carga conveniente y una estructura de sección limpia.

🛡️🔍 Verifique rápidamente su archivo, sólo déjame en esta página.
Verificación de virus, hashes, verificación de firmas, arquitectura, información de IA.

Error de Windows: el cliente WinRM Shell no puede procesar la solicitud

Descripción del error

This error occurs when a Windows Remote Management (WinRM) session fails to receive output data from a remote machine. The specific function WSMansReceiveShellOutput espera variables válidas para procesar el flujo de datos. Si se produce una interrupción de red, desbordamiento de búfer, desajuste en el tamaño de los datos o corrupción durante la transmisión, el parámetro requerido se vuelve nulo o cero, causando que el cliente WinRM falle y interrumpa la operación. Se activa comúnmente durante scripts de larga ejecución, transferencias de datos pesadas o cuando hay una incompatibilidad en las configuraciones de tamaño de paquete PowerShell / WinRM entre las máquinas locales y remotas.


Soluciones paso a paso

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) salvo que se especifique lo contrario.

Solución 1: Aumentar el tamaño de WinRM MaxEnvelopeSizeKB

La causa más común es que los datos que se devuelven exceden el tamaño máximo de paquete predeterminado permitido por WinRM.

  1. Haga clic en el Start menu, tipo cmd, haga clic derecho en Command Prompt, y seleccione Run as administrator.
  2. Compruebe el tamaño máximo actual de su sobre ejecutando este comando:
    winrm get winrm/config
  3. Aumentar el tamaño del sobre tanto en el cliente como en las máquinas remotas para permitir paquetes de datos más grandes (por ejemplo, cambiándolo a 8192 KB):
    winrm set winrm/config @{MaxEnvelopeSizeKB="8192"}
  4. Reinicie el servicio WinRM para aplicar los cambios:
    net stop winrm
    net start winrm

Solución 2: Aumentar el proveedor de WSMan MaxMemoryPerShellMB

Si el shell remoto se queda sin memoria asignada mientras procesa la salida, los parámetros de la función fallan.

  1. Abierto. PowerShell as an Administrator.
  2. Compruebe el límite de memoria actual por shell ejecutando:
    Get-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB
  3. Aumente el límite de memoria a 2048 MB (o más dependiendo de los recursos del sistema) para evitar estados de falta de memoria:
    Set-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB 2048
  4. Reinicie el servicio WinRM para comprometer la configuración:
    Restart-Service winrm

Solución 3: Modifique el búfer de salida en su script de PowerShell

Si el error ocurre durante un comando o script específico, el flujo de salida puede estar abrumando la tubería.

  1. Abre tu script y localiza el comando que causa el error.
  2. En el apéndice. | Out-Buffer -Count 1 a la orden para forzar el procesamiento inmediato de cada fila de datos en lugar de almacenar en caché un lote grande. Ejemplo:
    Get-WinEvent -LogName Application | Out-Buffer -Count 1
  3. Alternativamente, si no necesita los flujos de salida detallados, redirige los errores y las salidas verbosas a cero:
    Your-Command-Here 2>$null 3>null 4>null

Solución 4: Reiniciar y reconfigurar las configuraciones de WinRM

Si los parámetros de configuración están dañados, restablecer la arquitectura WinRM a los valores predeterminados puede solucionar problemas ocultos.

  1. Abierto. Command Prompt as an administrator.
  2. Deshabilitar por completo la configuración del oyente WinRM:
    winrm invoke ResetListener winrm/config/listener?Address=*+Transport=HTTP
  3. Reinicie el asistente de configuración rápida para reparar los puntos finales y las reglas del firewall:
    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

Puede haber algunos errores.. Learn Microsoft