Outlook 不保留会议属性
Posted
技术标签:
【中文标题】Outlook 不保留会议属性【英文标题】:meeting properties are not preserved by outlook 【发布时间】:2016-08-23 13:51:41 【问题描述】:在 Outlook 插件中,我想为传出的电子邮件/会议请求设置 PS_INTERNET_HEADERS 属性。我可以看到,对于会议,当我打开传入会议(我将其发送给自己)时,这些属性没有保留 - 我的属性的电子邮件标题不存在,我在 OutlookSpy 中看不到该属性。对于常规电子邮件(不是会议),属性可以很好地保留。
我还可以使用 OutlookSpy 重现此行为 - 我创建一个新会议,在 OutlookSpy 中添加一个名为 PS_INTERNET_HEADERS 的属性,然后将会议发送给我自己。当我打开即将到来的会议时,财产已经消失了。 (当我从 SentItems 打开会议时,它也不会出现)
【问题讨论】:
您在何时何地设置 PS_INTERNET_HEADERS 属性?你到底用什么代码? 【参考方案1】:您何时以及如何设置属性?请记住,永远不会发送AppointmentItem
。当您调用AppointmentItem.Send
时,会创建并发送一个新的MeetingItem
对象。您只能在 Application.ItemSend
事件处理程序中访问它。
【讨论】:
当用户单击我添加到“新会议”窗口的按钮时,我设置了属性(使用带有 PS_INTERNET_HEADERS guid 的 HrSetOneProp)。从您所说的我了解,与其在用户单击按钮时设置属性,我宁愿记住它,并且在 ItemSend 时我应该在发送的项目上设置属性? 正确。检查是否在日历文件夹中的 AppointmentItem 对象上设置了该属性(单击 OutlookSpy 中的 IMessage)。您可以通过调用 MeetingItem.GetAssociatedAppointment 从 ItemSend 事件处理程序访问约会(和该属性)。以上是关于Outlook 不保留会议属性的主要内容,如果未能解决你的问题,请参考以下文章