指定Powershell在WMF 3.0安装后在.NET 3.5上运行

我只是在安装了SharePoint Foundation 2010的Server 2008 R2 SP1计算机上安装了.NET Framework 4.0和WMF 3.0。

现在,当我开始 – 所有程序 – Microsoft SharePoint 2010产品 – SharePoint 2010 Management Shell(以pipe理员身份运行)时,出现以下错误:本地服务器场无法访问。 具有FeatureDependencyId的Cmdlet未注册。

如果我input:add-PSSnapin Microsoft.SharePoint.PowerShell然后Get-SPFarm,我得到以下内容:

Get-SPFarm : Microsoft SharePoint is not supported with version 4.0.30319.1 of the Microsoft .Net Runtime. At line:1 char:1 + Get-SPFarm + ~~~~~~~~~~ + CategoryInfo : InvalidData: (Microsoft.Share...SpCmdletGetFarm: SpCmdletGetFarm) [Get-SPFarm], PlatformNotSupportedException + FullyQualifiedErrorId : Microsoft.SharePoint.PowerShell.SpCmdletGetFarm 

看来,安装WMF 3.0后,现在Powershellconfiguration为运行在.NET Framework 4.0上。 我没有问题,但是我需要能够打开至less一个针对.NET 3.5的Powershell会话,以便我可以使用SharePoint API。

谢谢,

你为什么要安装它? Sharepoint 2010是一个.NET 3.5的应用程序,不支持使用.NET 4.0,如Sharepoint 2013,与Powershell 3.0相同。

无论如何,你可以通过在PS 2.0模式下运行shell来解决这个问题。 例如,如果您在Windows 2012服务器上使用Sharepoint 2010,就会有所帮助。

在PowerShell中:

 Powershell -version 2 Add-PSSnapin Microsoft.SharePoint.PowerShell 

这应该让你后来什么。