import-module MSOnline报错解决方案
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了import-module MSOnline报错解决方案相关的知识,希望对你有一定的参考价值。
今天遇到的一个问题,其实以前也遇到过,就是找了半天文档也没有解决。具体出错信息如下:PS C:\> Import-Module MSOnline
Import-Module : Could not load file or assembly ‘file:///C:\Program
Files\WindowsPowerShell\Modules\MSOnline\1.1.183.17\Microsoft.Online.Administration.Automation.PSModule.dll‘ or one of
its dependencies. An attempt was made to load a program with an incorrect format.
At line:1 char:1
- Import-Module MSOnline
-
+ CategoryInfo : InvalidOperation: (:) [Import-Module], BadImageFormatException + FullyQualifiedErrorId : FormatXmlUpdateException,Microsoft.PowerShell.Commands.ImportModuleCommand 
在winndows 10以后都是自动安装Windows Management framework 5.1
官网给的参考资料就是:
https://docs.microsoft.com/en-us/office365/enterprise/powershell/connect-to-office-365-powershell
需要安装的一个组件是:Microsoft Online Services Sign-in Assistant for IT Professionals RTW,这个我也安装了。
然后就是运行命令:install-module -name AzureAD
这个命令也是运行成功的,但是一运行 import-module MSOnline就会出错。
我去这里 C:\Windows\SysWOW64\WindowsPowerShell\v1.0\Modules 检查了下,没有下载的模块,但是发现这种在线直接安装的模块都放在C:\Program Files (x86)\WindowsPowerShell\Modules
最笨的办法就是把C:\Program Files (x86)\WindowsPowerShell\Modules所有文件拷到 C:\Windows\SysWOW64\WindowsPowerShell\v1.0\Modules
然后再次运行,发现还是失败,我都快被气晕了。框架也有,那个认证的组件也安装了,还是不行呢。因为我习惯用POWERSHELL ISE来干活,索性就打开ISE再整一遍,其中有一个说法是把Set-ExecutionPolicy 改成Unrestricted
然后我就在ISE里一顿操作猛如虎,然后问题就解决了。其实回想起来还是POWERSHELL版本引起的,系统默认给安装了64位的和X86的,混在一起乱七八糟的。反正能用了就行了,我也不纠节为啥那个POWERSHELL X64就是不能用了。
以上是关于import-module MSOnline报错解决方案的主要内容,如果未能解决你的问题,请参考以下文章
无法在 PowerShell 上导入 MSOnline(Connect-MsolService 错误)
Import-Module:未加载指定的模块“activedirectory”,因为在任何模块目录中都找不到有效的模块文件