VB中的Recipients.Count无法正常工作

时间:2017-07-28 11:47:33

标签: vb.net outlook-addin

我有一个Outlook加载项,我试图访问约会邀请的收件人。即使收件人列为空,代码Outlook.AppointmentItem.Recipients.Count也会返回1,Recipients会返回发件人的电子邮件。

 Dim recips As Outlook.Recipients
 Dim recip As Outlook.Recipient
 Dim flag As Boolean = False

 cal = Application.ActiveInspector().CurrentItem
 recips = cal.Recipients
 cal.Save()
 MessageBox.Show(recips.Count)
 For Each recip In recips
     MessageBox.Show(recip.Address)
 Next

有谁能说明为什么会这样?

2 个答案:

答案 0 :(得分:0)

您可以使用GetAssociatedAppointment方法返回表示与会议请求关联的约会的AppointmentItem对象。然后您可以使用以下属性:

  • RequiredAttendees - 为会议约会返回以分号分隔的所需与会者姓名字符串。
  • OptionalAttendees - 返回或设置一个字符串,表示约会的可选参加者名称的显示字符串。

当然还有AppointmentItem类的Recipients属性。

答案 1 :(得分:0)

这是设计 - 约会组织者总是在收件人表中。您可以使用PR_RECIPIENT_FLAGS查看http://schemas.microsoft.com/mapi/proptag/0x5FFD0003属性(DALS名称Recipient.PropertyAccessor.GetProperty)来确定组织者是谁。组织者将设置recipOrganizer(= 2)位。