【问题标题】:Outlook VBA Read Ack and NAck PropertiesOutlook VBA 读取 Ack 和 NAck 属性
【发布时间】:2017-10-03 10:17:09
【问题描述】:

在处理 Outlook Read Ack 和 NAck 通知时(即,Item.MessageClassREPORT.IPM.Note.IPNRNIPNNRN)查询 Item.SenderNameItem.To/Item.Recipients 会抛出一个

运行时错误 438(对象不支持此属性或方法)。

检查每个Item.ItemProperties.Name 表明这是真的。但是,应用程序中的这些项目显然显示了 From 和 To 值。如何以编程方式访问这些内容?

版本是Outlook 2003 (11.8330.8405) SP3。目前无法升级。

【问题讨论】:

    标签: vba outlook outlook-2003


    【解决方案1】:

    Outlook 对象模型根本不公开ReportItem 对象的这些属性。

    您应该能够使用ReportItem.PropertyAccessor.GetProperty 访问与发送者相关的属性(您可以在OutlookSpy 中找出DASL 属性名称 - 选择项目,单击IMessage 按钮,选择属性,查看DASL 名称编辑框)。

    对于收件人,您只能选择扩展 MAPI(C++ 或 Delphi,ReportItem.MAPIOBJECT 属性将返回 IMessage MAPI 对象)或Redemption(任何语言,您可以创建RDOSession 对象的实例,设置将其 MAPIOBJECT 属性从 Outlook 更改为 Application.Session.MAPIOBJECT,然后使用 RDOSession.GetItemFromIdRDOSession.GetRDOObjectFromOUtlookObject 取回 RDOReporrtItem 对象的实例。

    编辑

    PropertyAccessor 是在 Outlook 2007 中添加的,因此它在 Outlook 2003 中对您不起作用。如果您使用 VBA,则赎回将是您唯一的选择...

    【讨论】:

      猜你喜欢
      • 2015-11-09
      • 2015-05-01
      • 2018-12-17
      • 1970-01-01
      • 2011-07-14
      • 1970-01-01
      • 1970-01-01
      • 2015-04-20
      相关资源
      最近更新 更多