PowerShell模块已加载,但没有cmdlet

时间:2018-11-05 22:54:16

标签: powershell

我制作了一个PowerShell模块,该模块存储在网络共享中。在模块中,我具有连接到Exchange Online的功能。

当我从网络共享导入模块并使用该功能连接到Exchange Online时,模块已加载(至少根据详细输出):

VERBOSE: Loading module from path 'C:\Users\user\AppData\Local\Temp\tmp_22gpyzrn.tf1\tmp_22gpyzrn.tf1.psd1'.
VERBOSE: Loading 'FormatsToProcess' from path
'C:\Users\user\AppData\Local\Temp\tmp_22gpyzrn.tf1\tmp_22gpyzrn.tf1.format.ps1xml'.
VERBOSE: Loading module from path 'C:\Users\user\AppData\Local\Temp\tmp_22gpyzrn.tf1\tmp_22gpyzrn.tf1.psm1'.

详细输出:https://pastebin.com/5tZhVPyj

但是,没有来自Exchange Online的cmdlet,例如获取邮箱可用。当我运行Get-Module时,我看不到模块已加载。如果我转到Temp文件夹,则可以看到该模块实际上已下载。我什至可以使用

加载模块
Import-Module 'C:\Users\user\AppData\Local\Temp\tmp_22gpyzrn.tf1'

如果我将函数复制到PowerShell控制台并执行代码并运行该函数,则将从Exchange Online正确加载该模块。我可以在使用Get-Module时看到它列出的信息,并且可以使用诸如Get-Mailbox之类的cmdlet。

详细输出:https://pastebin.com/JNjyYguQ

同一模块中的其他功能可以正常工作,但是当我连接到Exchange Online(以及安全性和合规性)时,发生了一些奇怪的事情。

我是否忽略了安全设置或类似设置?

0 个答案:

没有答案