PowerShell无法导入MSOnline(Connect-MsolService错误)。

21
我之前遇到一个问题,但无法找到答案。我的问题是尝试使用Azure cdmlets通过C#代码连接到O365时,但是我无法获得connect-msolservice
引用了以下内容:

“当您尝试在Office 365中运行管理员Windows PowerShell cmdlet时出现未识别该项的错误”

6个回答

61

在查看微软的TechNet文章“Azure Active Directory Cmdlets” -> “安装Azure AD模块”后,很高兴地发现该过程已经被大大简化。

截至2016年6月30日,为了成功执行PowerShell命令Import-Module MSOnlineConnect-MsolService,您需要安装以下应用程序(仅适用于64位):

  1. 适用操作系统:Windows 7到10
    名称:“面向IT专业人员的Microsoft Online Services登录助手RTW”
    版本:7.250.4556.0(最新版)
    安装程序URL:https://www.microsoft.com/en-us/download/details.aspx?id=41950
    安装程序文件名:msoidcli_64.msi
  2. 适用操作系统:Windows 7到10
    名称:“用于Windows PowerShell的Windows Azure Active Directory模块”
    版本:未知,但最新安装程序文件的SHA-256哈希值为D077CF49077EE133523C1D3AE9A4BF437D220B16D651005BBC12F7BDAD1BF313
    安装程序URL:https://technet.microsoft.com/en-us/library/dn975125.aspx
    安装程序文件名:AdministrationConfig-en.msi
  3. 适用操作系统:仅限Windows 7
    名称:“Windows PowerShell 3.0”
    版本:3.0(较新版本可能也可以)
    安装程序URL:https://www.microsoft.com/en-us/download/details.aspx?id=34595
    安装程序文件名: Windows6.1-KB2506143-x64.msu

 

输入图片说明 输入图片说明 输入图片说明


2
谢谢您这么好的解释。完全解决了我的问题。 - Piyush
1
十七个月后,您仍需要登录助手的BETA版本(请参见第4步的注释)。在Win7 x64上,我安装了登录助手7.250.4303,所以无法弄清楚为什么Azure设置会抱怨需要7.0。果然,在安装了登录助手BETA 7.250.4551之后,我才能安装Azure AD模块。 - Mark Berry
“New Answer”链接对于#1和#2是相同的URL。我认为Azure Powershell模块的更正链接在这里的步骤#1:https://technet.microsoft.com/en-us/library/dn975125.aspx - AndyMcKenna

25
经过数小时的搜索和尝试,我发现在x64服务器上,必须安装x64的MSOnline模块,而一些需要运行它们的程序正在使用x86的PS版本,因此它们永远找不到它。
【解决方法】我解决这个问题的方法是:从源目录复制名为 "MSOnline" 和 "MSOnline Extended" 的文件夹
C:\Windows\System32\WindowsPowerShell\v1.0\Modules\
到文件夹
C:\Windows\SysWOW64\WindowsPowerShell\v1.0\Modules\
然后在PS中运行Import-Module MSOnline,它将自动获取该模块 :D

谢谢!这正是我在寻找的。 - Piyush
感谢分享! - atmorell

2

将32位库复制到64位的解决方案对我没有用。有效的方法是在项目属性中取消选择目标平台优先使用32位的选项。


谢谢。这个解决方案修复了我的问题,当我试图在由C#应用程序托管的PowerShell Runspace中运行Connect-MsolService时。 - David

1
我正在使用更新版本的SPO管理Shell。为了让错误消失,我将我的Import-Module语句更改为以下内容: Import-Module Microsoft.Online.SharePoint.PowerShell -DisableNameChecking; 我还使用了更新的命令: Connect-SPOService

0

-2
以下是必要的内容:
  • 需要下载并安装 MS Online Services Assistant。
  • 需要下载并安装 MS Online Module for PowerShell。
  • 在 PowerShell 中连接到 Microsoft Online。

来源:http://www.msdigest.net/2012/03/how-to-connect-to-office-365-with-powershell/

然后如果您正在运行 64 位计算机,请参考以下步骤:

请将 MSOnline 文件夹从 (1) –> (2) 复制如下:

1) C:\Windows\System32\WindowsPowerShell\v1.0\Modules(MSOnline)

2) C:\Windows\SysWOW64\WindowsPowerShell\v1.0\Modules(MSOnline)

来源:http://blog.clauskonrad.net/2013/06/powershell-and-c-cant-load-msonline.html

希望这个更好,能够节省一些人的时间


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接