🇬🇧 | 🇩🇪 | 🇫🇷 | 🇪🇸 | 🇨🇳 | 🇸🇦
我们没有DLL,但我们有:
Windows文件分析器和在线快速反病毒

一个简约的界面,具有快速搜索,方便的上传和干净的部分结构.

🛡️🔍 快速验证你的档案,只需要放上这个页面.
病毒检查,哈希,签名验证,架构,人工智能信息.

Windows 错误: WinRM Shell 客户端无法处理请求

没有.

这种错误通常发生在远程管理任务中. Windows Remote Management (WinRM) 或是 PowerShell Remoting. 它表示本地计算机和远程服务器之间的连接会话 (shell处理器) 在操作中断,失同步或受损.

最常见的原因包括:


逐步修复问题

为了解决问题,请遵循以下解决方案.

修复1:重新启动WinRM服务

在本地机器和远程机器上更新 WinRM 服务通常会清除无效的手柄.

  1. 打开门 Start Menu 寻找 cmd,右键点击它,并选择 Run as administrator.
  2. 键入下面的命令来停止服务,然后按下 Enter:
    net stop winrm
  3. 键入下面的命令重新启动服务,然后按下 Enter:
    net start winrm

修复2:增加每个用户的最大外

如果您正在运行复杂的脚本,则可能会达到并发远程的默认限制.您可以在远程服务器上增加此值.

  1. 打开 PowerShell as an Administrator 在目的机上.
  2. 运行此命令来检查您的当前限制:
    Get-Item WSMan:\localhost\Shell\MaxShellsPerUser
  3. 通过运行:
    Set-Item WSMan:\localhost\Shell\MaxShellsPerUser 50

修复3: 重新建立PowerShell会话

如果此错误出现在长期运行的 PowerShell 脚本中,则现有会话对象已死亡.您必须明确关闭破碎的会话并创建一个新的.

  1. 在脚本中寻找您的会话变量 (通常名为 $session ) 没有.
  2. 添加代码以安全地删除破损的会话:
    Remove-PSSession $session -ErrorAction SilentlyContinue
  3. 在执行下一个命令之前创建一个新的会话:
    $session = New-PSSession -ComputerName "RemoteComputerName"
    Invoke-Command -Session $session -ScriptBlock { YourCommand }

修复4:调整MaxMemoryPerShellMB设置

远程机器的低内存配置可能会导致WSMan shell主机进程崩,导致无效处理.

  1. 打开 PowerShell as an Administrator 在远程机器上.
  2. 检查每个 shell 的当前内存限制:
    Get-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB
  3. 将内存限制增加到 2048 MB (2 GB),以确保脚本不会耗尽内存:
    Set-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB 2048
  4. 重新启动 WinRM 服务以应用更改:
    Restart-Service winrm
ERROR_WSMAN_CREATESHELL_NULL_STREAMID | ERROR_WSMAN_SHELL_INVALID_SHELL_HANDLE | ERROR_WSMAN_RUNSHELLCOMMAND_NULL_ARGUMENT | ERROR_WSMAN_COMMAND_ALREADY_CLOSED | ERROR_WSMAN_SENDSHELLINPUT_INVALID_STREAMID_INDEX

可能有一些错误.. Learn Microsoft