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
    ![](https://s1.51cto.com/images/blog/201907/20/7472219814a51e465f4a9bdac902942e.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

在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”,因为在任何模块目录中都找不到有效的模块文件

升级Ubuntu 16.04之后报错解决方法

99%的人都错解了http中get和post的区别(摘文)

数据结构实践——“求两集合交集”的一个错解分析

3月15日 如何读取配置文件