当你为 Outlook 2019、Outlook 2016、Outlook 2013 或 Outlook for Office 365 中的所有邮件创建搜索文件夹时,该文件夹可能包含主题为空的异常邮件项目。 如果将鼠标移到这些项邮件上,将显示以下信息:
在文件夹中:PersonMetadata
PersonMetadata 文件夹由 Outlook Customer Manager (OCM) 创建和使用。 尽管 OCM 服务在 2020 年 6 月被弃用,但 Outlook 仍使用此文件夹。 在"联系人"文件夹或"收件人缓存"文件夹("联系人"文件夹下的隐藏文件夹)中创建新项目时,相关项目将创建在 PersonMetadata 文件夹中。
PersonMetadata 文件夹通常对 Outlook 用户界面的其他部分隐藏。 但是,来自 PersonMetadata 文件夹的邮件项目可能包含在搜索文件夹中。 你可以通过这些项目的空主题行来标识这些项目。
PersonMetadata 文件夹和在该文件夹中创建的项将在将来从服务中删除。 同时,你可以使用以下任一解决方法来解决此问题。
解决办法 1
若要防止 PersonMetadata 文件夹中的邮件项目显示在搜索文件夹中,请按照以下步骤操作:
- 右键单击“搜索文件夹”,然后选择“自定义此搜索文件夹”。
- 单击“浏览”,并取消选择“搜索子文件夹”选项。
- 手动选择要包含的文件夹。
解决办法 2
如果你收到"文件夹项目限制"通知,指出 PersonMetadata 文件夹已接近 100 万个项目的限制,请使用以下方法之一删除该文件夹中的所有项目。
文件夹项限制通知:
方法 1:在受影响的用户计算机上运行 MFCMAPI
如果只有少数用户遇到此问题,请使用此方法。 如果有许多受影响的用户,请使用方法 2。
退出 Outlook。
下载 MFCMAPI 工具
启动 MfcMapi.exe,然后选择“确定”。
在“工具”菜单上,选择"选项",指定以下选项,然后选择“确定”:
- 调用 OpenMsgStore 时使用 MDB_Online 标志
- 调用 OpenEntry 时使用 MAPI_NO_CACHE 标志
在“会话”菜单上,选择“登录”。
在“配置文件名”列表中,选择邮箱的配置文件,然后选择“确定”。
双击相应的 Microsoft Exchange 邮件存储。 通常,这是具有默认存储 = True设置的条目。
在导航窗格中,展开根容器,展开信息存储顶部,然后选择 PersonMetadata。
注意
“最上层的信息存储”节点的文本可以本地化为另一种语言,具体取决于邮箱的区域设置。
右键单击 PersonMetadata> 高级>,清空文件夹中的项目和子文件夹。
在“删除项目和子文件夹”对话框中,选择“硬删除”,然后选择“确定”。
请注意,MFCMAPI 在执行删除操作时可能会长时间停止响应。 你可以通过运行 Get-MailboxFolderStatistics cmdlet 来监视其进度。
方法 2:以管理员身份运行 EWS 脚本
此方法要求你配置服务帐户以模拟用户。 请参阅此文章,了解如何配置模拟。
下载 EWS 脚本。
以管理员身份运行以下 cmdlet 以安装最新的 Exchange Online PowerShell 管理模块:
Install-Module ExchangeOnlineManagement
运行以下 cmdlet 以清空唯一用户的 PersonMetadata 文件夹:
.\CleanPersonMetadata.ps1 -Identity user@contoso.com
该 cmdlet 会硬删除这些内容(项目不会移动到“已删除的项目”)。 如果要在提交删除之前模拟删除,请使用
-WhatIf
参数。若要针对多个用户运行脚本,请创建一个包含“标识”列以及这些用户的 SMTP 地址的 CSV 文件。 然后,运行以下 cmdlet:
Import-CSV UserList.csv | .\CleanPersonMetadata.ps1 -Confirm:$false
注意:如果收到错误,指出找不到模块,则需要更新脚本以匹配模块的文件路径。 脚本当前具有以下路径:
Import-Module "C:\Program Files\WindowsPowerShell\Modules\ExchangeOnlineManagement\<module_version>\Microsoft.IdentityModel.Clients.ActiveDirectory.dll" -force
在 #639 行更新脚本中的路径,如下所示:
Import-Module "C:\Program Files\WindowsPowerShell\Modules\ExchangeOnlineManagement\<module_version>\netFramework\Microsoft.IdentityModel.Clients.ActiveDirectory.dll" -force
系统提示时,输入你为模拟配置的服务帐户的凭据。