Windows

LAPS PS 模組導入失敗

  • July 24, 2017

在 Windows Small Business Server 2011 Essentials 伺服器上,提升的 PowerShell 命令Import-Module AdmPwd.PS失敗並輸出以下內容:

Import-Module : Could not load file or assembly 'file:///C:\Windows\system32\WindowsPowerShell\v1.0\Modules\AdmPwd.PS\AdmPwd.PS.dll' or one of its dependencies. This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded.
At line:1 char:14
+ Import-Module <<<<  AdmPwd.PS
   + CategoryInfo          : NotSpecified: (:) [Import-Module], BadImageFormatException
   + FullyQualifiedErrorId : System.BadImageFormatException,Microsoft.PowerShell.Commands.ImportModuleCommand

PowerShell command Get-ExecutionPolicyoutputted RemoteSigned,據我所知,這已經足夠了,但是 PowerShell 命令Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force無論如何都沒有解決問題。

https://social.technet.microsoft.com/Forums/Windows/en-US/fa0b7074-571d-4d84-b3b1-b214443b81b0/laps-importmodule-admpwdps-fail?forum=winserverpowershellhttps://flamingkeys.com/ deploying-the-local-administrator-password-solution-part-2/建議升級安裝 Windows Management Framework / PowerShell 將解決問題。

PowerShell 命令$PSVersionTable.PSVersion輸出以下內容:

Major Minor Build Revision
----- ----- ----- --------
2 0 -1 -1

https://www.microsoft.com/en-us/download/details.aspx?id=46899說:

支持的作業系統

Windows 10、Windows 7、Windows 8、Windows 8.1、Windows Server 2003、Windows Server 2008、Windows Server 2008 R2、Windows Server 2012、Windows Server 2012 R2、Windows Server 2016、Windows Vista

Active Directory:(需要 AD 架構擴展)

• Windows 2003 SP1 或更高版本。

受管機器:

• Windows Server 2003 SP2 或更高版本,或 Windows Server 2003 x64 Edition SP2 或更高版本。

注意:不支持基於 Itanium 的電腦。

管理工具:

• .NET Framework 4.0

PowerShell 2.0或更高版本

https://community.spiceworks.com/topic/1970987-sbs-2011-and-powershell-v3https://blogs.technet.microsoft.com/sbs/2012/12/15/windows-management-framework- 3-0-applicability-on-windows-small-business-server-20082011-standard/強烈建議 Windows SBS 2011 和 PowerShell 3 存在兼容性問題。

https://tridion.stackexchange.com/questions/4497/import-module-could-not-load-file-or-assembly-when-running-2013-sp1-db-upgrahttps://code.msdn。 microsoft.com/windowsdesktop/Solution-for-management-of-ae44e789/view/Discussions/12建議此問題 (1) 是由為 .NET Framework 版本 4 編譯的 PowerShell 模組引起的,但預設情況下,PowerShell 僅載入.NET Framework 版本 2 和 (2) 可以通過創建C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe.config包含以下內容的文件來解決:

<?xml version="1.0"?>
<configuration>
   <startup useLegacyV2RuntimeActivationPolicy="true">
       <supportedRuntime version="v4.0.30319"/>
       <supportedRuntime version="v2.0.50727"/>
       <supportedRuntime version="v4.6" />    
   </startup>
</configuration>

我證實這解決了問題。

引用自:https://serverfault.com/questions/864801