无法在powershell脚本

时间:2016-01-28 19:56:19

标签: powershell sharepoint office365

我尝试使用powershell脚本连接到offce365 sharepoint网站。但是,我尝试加载共享点程序集的命令都没有工作。

错误消息(抱歉,它是德语)如下所示:

Add-Type : Die Datei oder Assembly "file:///'C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll" oder eine Abhängigkeit davon wurde nicht gefunden. Die Assembly wird von einer Laufzeit erstellt, die aktueller als die derzeit geladene Laufzeit ist, und kann nicht geladen werden.
Bei C:\Users\****\Desktop\onfb\odfb.ps1:6 Zeichen:9
+ Add-Type <<<<  -Path 'C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll'
    + CategoryInfo          : NotSpecified: (:) [Add-Type], BadImageFormatException
    + FullyQualifiedErrorId : System.BadImageFormatException,Microsoft.PowerShell.Commands.AddTypeCommand

它说,组件(或依赖项)可能无法找到,或者是由比我使用的版本更新的版本创建的。

首先我尝试用

加载初始文件
Add-Type -Path 'C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll'

之后我尝试了以下命令:

Add-Type -Path ([System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Client").location)

我还尝试将文件复制到另一个文件夹,并相应地更改了引用。

我也设置了

<runtime>
    <loadfromremotesources enabled="true"/>
</runtime>
powershell.exe.config文件中的

。那里没有,所以我创造了它。

我在提升模式下运行powershell,并尝试使用不受限制的安全性。

有谁知道如何解决这个问题?

谢谢!

1 个答案:

答案 0 :(得分:1)

英文中的准确错误信息是:

  

此程序集由比当前加载的运行时更新的运行时构建   运行时无法加载。

很可能是因为您使用PowerShell 版本2 ,但SharePoint Online Client Components SDK定位.Net Framework v4.0 enter image description here

  

如何确定已安装的PowerShell版本:

PS C:\> $PSVersionTable.PSVersion

.NET 4 CLR可以加载.NET 2程序集,但反之亦然。因此,您必须升级PowerShell。