SharePoint 2010 似乎仍然与 PowerShell 3.0 版不兼容。
我已经知道可以通过使用-v 2
开关执行 PowerShell 来强制兼容,但是有没有办法在通过 PSSession 使用远程会话时强制使用这种兼容模式,因为使用远程桌面只是启动 shell 是不切实际的?
SharePoint 2010 似乎仍然与 PowerShell 3.0 版不兼容。
我已经知道可以通过使用-v 2
开关执行 PowerShell 来强制兼容,但是有没有办法在通过 PSSession 使用远程会话时强制使用这种兼容模式,因为使用远程桌面只是启动 shell 是不切实际的?
如果您使用-v 2
. 然后传出的远程会话应自动在远程端使用 v2。
更新:看来我错了——我想事实上我已经与 PowerShell 团队讨论过这个问题,但显然它并没有修复。无论如何,您可以在服务器上创建一个强制为 2.0 版本的会话配置:
PS> $psversiontable
Name Value
---- -----
PSVersion 3.0
WSManStackVersion 3.0
SerializationVersion 1.1.0.1
CLRVersion 4.0.30319.18010
BuildVersion 6.2.9200.16434
PSCompatibleVersions {1.0, 2.0, 3.0}
PSRemotingProtocolVersion 2.2
PS> Register-PSSessionConfiguration -PSVersion '2.0' -Name "powershell2"
接受所有提示。现在,从客户端调用时必须传递新远程会话配置的名称(在本例中,客户端和服务器是同一台机器:我的桌面)
PS> icm localhost -ConfigurationName powershell2 { $psversiontable }
Name Value
---- -----
PSRemotingProtocolVersion 2.1
BuildVersion 6.1.7600.16385
PSCompatibleVersions {1.0, 2.0}
PSVersion 2.0
CLRVersion 2.0.50727.6400
WSManStackVersion 2.0
SerializationVersion 1.1.0.1
如您所见,远程端点正在运行 2.0。
我希望这有帮助。