![如何使用 Powershell 和 Outlook 从 Exchange Server 获取项目?](https://linux22.com/image/1465121/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20Powershell%20%E5%92%8C%20Outlook%20%E4%BB%8E%20Exchange%20Server%20%E8%8E%B7%E5%8F%96%E9%A1%B9%E7%9B%AE%EF%BC%9F.png)
我正在使用 Powershell 管理 Outlook 中的电子邮件:
# Connect
$Outlook = New-Object -ComObject Outlook.Application
# Select the "TDD" subfolder from my mailbox
$EmailsInFolder = $Outlook.Session.Folders.Item(5).Folders.Item("Inbox").Folders.Item("TDD").Items
$EmailsInFolder.count
我无法访问全部我的邮件中只有一些最新的邮件。
当我在 Outlook 中查看电子邮件时,我看到了文本“服务器上的此文件夹中还有更多项目 - 单击此处可在 Microsoft Exchange 上查看更多内容”。单击此按钮可显示完整的邮件集。
我如何告诉我的 Powershell 脚本从服务器获取项目?
答案1
您无法按照您尝试的方式进行操作。您已启用 Exchange 缓存模式,而 Outlook 对象模型仅适用于缓存项目。为了能够获取所有项目,您必须禁用帐户的缓存模式或将其缓存期限延长至“全部”。
但是,存在一种商业产品,它提供命令行支持,并且能够从服务器获取所有项目。