LAPS PS 模块导入失败

LAPS PS 模块导入失败

在 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 命令Get-ExecutionPolicy输出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 存在兼容性问题。

答案1

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>

我验证了这确实解决了这个问题。

相关内容