症状
在 Microsoft Exchange Server 2016年环境中,卸载Windows PowerShell 2.0 版,并改为安装 PowerShell 的较新版本之后,Exchange 管理外壳程序无法打开成功,,并收到以下错误消息消息:
新的 PSSession: 从远程服务器服务器名称[服务器名] 处理数据失败
下面的错误消息: [ClientAccessServer =服务器名,BackEndServer =服务器名,了申请 Id =了申请 Id,时间戳日期时间=]
[AuthZRequestId=AuthZRequestId][FailureCategory=AuthZ-SetupVersionInformationCorruptException]
无法确定安装的文件版本的注册表项从
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngine。有关详细信息,请参见
about_Remote_Troubleshooting 帮助主题。
在行: 1 字符: 1
+ 新建 PSSession ConnectionURI"$connectionUri"-配置名磁墨字符识别...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo: OpenError: (System.Manageme...RemoteRunspace:RemoteRunspace) [新-PSSession],PSRemotin
gTransportException
+ FullyQualifiedErrorId: IncorrectProtocolVersion PSSessionOpenFailed
此外记录了以下事件日志项:
登录名: 应用程序
来源: MSExchange RBAC
日期:日期时间
事件 ID: 258
任务类别: RBAC
级别: 错误
关键词: 经典
用户: 不适用
计算机︰计算机名称
说明:
(进程 8820,PID w3wp.exe)"RemotePS 公共 API 函数求 GetApplicationPrivateData 引发异常 Microsoft.Exchange.Diagnostics.SetupVersionInformationCorruptException: 无法确定安装的文件版本的注册表项从 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngine。
原因
因为 PowerShell 的较新版本的注册表路径已更改,将出现此问题。
解决方法
您可以添加HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngine注册表键后卸载 Windows PowerShell 2.0 之后。最快的方式是抓住注册表 Microsoft TechNet 库中的文件: https://gallery.technet.microsoft.com/Exchange-2016-CU1-7c843cb0。
解决方案
若要解决此问题,请安装 Exchange Server 2016年或更高版本的Exchange Server 2016 年累积更新累积更新 9 。
状态
Microsoft 已经确认这是“适用于”一节中列出的 Microsoft 产品中的问题。
参考资料
了解 Microsoft 用于描述软件更新的术语。