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

import-module MSOnline報錯解決方案

然後我就在ISE裏一頓操作猛如虎,然後問題就解決了。其實回想起來還是POWERSHELL版本引起的,系統默認給安裝了64位的和X86的,混在一起亂七八糟的。反正能用了就行了,我也不糾節爲啥那個POWERSHELL X64就是不能用了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章