7

我刚刚在我的 Windows 7 机器上安装了新的 powershell 3,然后我发现新版本的 powershell 不适用于 Sharepoint 2010。

我还找到了解决此问题的方法(此处此处)。但它只解决了标准 powershell 控制台的问题。由于我们通过 ISE 完成大部分工作,我想知道是否可以在 ISE 中做同样的事情?

我尝试添加版本参数,但 ISE 不知道。我尝试在powershell -version 2ISE 的控制台中输入,但没有帮助。

如果不可能,我还有一个问题:我需要将 ISE 与 Sharepoint 2010 一起使用,那么如何卸载 powershell 3 和新的 ISE?

4

2 回答 2

6

这是安装 Windows Management Framework 3.0 更新(包括 PS 3.0)时的一个已知问题,由于它使用 .net 4.0,因此所有 SP2010 cmdlet(即 3.5)不兼容。

控制台应用程序可以接受“-version 2”开关,但正如指出的那样,这与 ISE 不兼容。

这是一个已知问题,另一篇文章建议卸载 WMF 更新并重新启动服务器,我认为这是您问题最后一部分的唯一真正答案。

于 2012-12-29T11:53:55.117 回答
1

您可以通过创建新的 PSSession 来做到这一点。

Register-PSSessionConfiguration -Name PS2 -PSVersion 2.0 –ShowSecurityDescriptorUI

# Please consult system admin when your run set-item and Enable-WSManCredSSP command
Set-Item wsman:localhost\client\trustedhosts -value * -Confirm:$false -Force
Enable-WSManCredSSP -Role Client –DelegateComputer * -Force
Enable-WSManCredSSP -Role Server -Force

# For test purpose
# Get-WSManCredSSP
# get-item wsman:localhost\client\trustedhosts

$cred = Get-Credential
$session = New-PSSession -ComputerName $env:COMPUTERNAME -authentication credssp -ConfigurationName PS2 -Credential $cred
Enter-PSSession $session

# 2.0 runtime
Add-PSSnapin microsoft.sharepoint.powershell
$web = Get-SPWeb http://SPSite/
$web.Url

Exit-PSSession

Unregister-PSSessionConfiguration -Name PS2

Disable-WSManCredSSP -Role Client
Disable-WSManCredSSP -Role Server

如果您不退出 PSSession,则可以从 Powershell ISE 3 运行 2.0 运行时命令。

于 2016-02-29T16:49:39.647 回答