如何获取mailItem.To收件人框中未下划线的全部邮件地址内容?
获取MailItem收件人输入框完整原始内容的方法
Outlook内置的MailItem.To属性仅返回已完成解析(带下划线)的收件人地址,未被识别的地址不会被包含在内,可通过读取MAPI原生属性的方式直接获取输入框内的所有原始内容,无需依赖收件人解析状态或Recipients集合:
- 核心调用的MAPI属性为
PR_DISPLAY_TO,对应常量标识为http://schemas.microsoft.com/mapi/proptag/0x0E04001F,通过PropertyAccessor读取即可拿到输入框内原样填写的所有内容,包含未解析的无下划线邮箱地址。 - 参考代码(VBA):
Dim rawToText As String ' 读取收件人输入框原始内容 rawToText = mailItem.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x0E04001F")
- 拓展用法:
- 读取抄送框原始内容:替换属性值为
http://schemas.microsoft.com/mapi/proptag/0x0E03001F - 读取密送框原始内容:替换属性值为
http://schemas.microsoft.com/mapi/proptag/0x0E02001F - 该方案兼容所有主流Outlook版本,不受邮件类型限制,不需要先完成收件人解析操作。
- 读取抄送框原始内容:替换属性值为
内容的提问来源于stack exchange,提问作者Mehmet Ceylan
相关产品推荐
相关产品推荐

