首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >新-ExoPSSession:索引超出范围

新-ExoPSSession:索引超出范围
EN

Stack Overflow用户
提问于 2021-10-25 16:19:51
回答 4查看 1.1K关注 0票数 1

我正在开发一个连接到Exchange Online Microsoft 365的脚本,但是当脚本执行cmdlet "Connect-ExchangeOnline“时,它会以错误结束。

具体的指示是:

代码语言:javascript
复制
Connect-ExchangeOnline -Organization $myTenant -AppId $AppId -Certificate $myCert

参数中的变量是正确的,错误表示:

New:索引超出了范围。必须是非负的,并且小于集合的大小。参数名称:索引

我可以成功地加载模块。该脚本通过安装在我的机器上的证书连接到Exchange Online,我的脚本可以毫无问题地读取它。

我正在Powershell V4和.Net框架4.7.1中运行这个脚本。如果我在另一台机器上使用PowerShell V5.1执行相同的脚本,我可以成功地连接到Microsoft365ExchangeOnline。我尝试了一个更低的版本(ExchangeOnlineManagement 1.0.1),但是这个版本没有这些参数(组织、AppId等),我现在使用的是2.0.3版本。我不确定您是否可以将Powershell升级到5.1。

有人知道我为什么不能在线交换吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2021-10-25 16:46:00

EXO V2是仅支持PowerShell 5.1及更高版本。如果您想使用PowerShell 4.0 您必须使用EXO V1

我对EXO模块还不太熟悉,不知道如何或是否可以在当前环境中使用EXO V1。如果现代Exchange管理需要V2,那么您将需要升级节点以使用WMF5.1或安装PowerShell Core (7+),并在那里使用EXO V2。

Windows与PowerShell PowerShell并行安装,因此如果您使用此路径,那么影响其他代码的风险就更小了,这需要PowerShell 4.0。

票数 0
EN

Stack Overflow用户

发布于 2022-05-05 12:15:22

我一直在努力解决这个问题,我终于找到了解决办法。

结果表明,在运行Import-Module ExchangeOnlineManagement之前,Connect-ExchangeOnline会导致此错误。

删除Import-Module ExchangeOnlineManagement就足以允许Connect-ExchangeOnline在没有New: Index超出范围错误的情况下进行连接

票数 3
EN

Stack Overflow用户

发布于 2021-10-31 23:06:14

我使用的是WindowsWindows5.1,这似乎是PowerShell版本2.0.4中引入的一个问题。

把评级降到2.0.3对我很有帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69711543

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档