无法在 powershell 脚本中加载 Microsoft.SharePoint.Client.dll
Cannot load Microsoft.SharePoint.Client.dll in powershell script
我正在尝试使用 powershell 脚本连接到 offce365 共享点站点。但是,none 我尝试加载共享点程序集的命令正在运行。
错误消息(抱歉,是德语)如下所示:
Add-Type : Die Datei oder Assembly "file:///'C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\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\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\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,也尝试过不受限制的安全性。
有人知道怎么解决吗?
谢谢!
准确的英文错误信息是:
This assembly is built by a runtime newer than the currently loaded
runtime and cannot be loaded.
很可能是因为您使用的是 PowerShell 版本 2,但 SharePoint Online Client Components SDK 的目标是 .Net Framework v4.0
How to determine installed PowerShell version:
PS C:\> $PSVersionTable.PSVersion
.NET 4 CLR 可以加载 .NET 2 程序集,但反之则不行。所以,你必须升级PowerShell。
我正在尝试使用 powershell 脚本连接到 offce365 共享点站点。但是,none 我尝试加载共享点程序集的命令正在运行。
错误消息(抱歉,是德语)如下所示:
Add-Type : Die Datei oder Assembly "file:///'C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\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\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\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,也尝试过不受限制的安全性。
有人知道怎么解决吗?
谢谢!
准确的英文错误信息是:
This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded.
很可能是因为您使用的是 PowerShell 版本 2,但 SharePoint Online Client Components SDK 的目标是 .Net Framework v4.0
How to determine installed PowerShell version:
PS C:\> $PSVersionTable.PSVersion
.NET 4 CLR 可以加载 .NET 2 程序集,但反之则不行。所以,你必须升级PowerShell。