Как автоматически добавлять пользовательские свойства пользователя ко всем новым ответам в Outlook VSTO - PullRequest
1 голос
/ 28 июня 2019

Я разрабатываю надстройку Outlook VSTO, в которой мы назначаем пользовательские свойства, называемые «Владение», для всех новых электронных писем. Код, который я использую, приведен ниже.

string UserName = (string)application.ActiveExplorer().Session.CurrentUser.Name;

MailUserProperties = SelectedMail.UserProperties;
                MailUserProperty = MailUserProperties.Add("Ownership", Outlook.OlUserPropertyType.olText, true, 1);
                MailUserProperty.Value = UserName;
                SelectedMail.Save();

Возможно ли, что когда кто-то отвечает нам, Outlook автоматически выбирает значение свойства "Владение" из исходного электронного письма и назначает все входящие ответы?

Заранее спасибо.

1 Ответ

1 голос
/ 28 июня 2019

Вы можете обработать событие Reply класса MailItem, где вы можете установить все необходимые пользовательские свойства.

В Outlook нет автоматического способа сделать это.Вы должны обрабатывать такие сценарии в коде.Метод MailItem.GetConversation позволяет получить объект Conversation , представляющий диалог, которому принадлежит этот элемент.

GetConversation возвращает значение Null (Nothing в Visual Basic), еслинет разговора для предмета.Нет диалога для элемента в следующих сценариях:

  • Элемент не был сохранен.Элемент может быть сохранен программно, действием пользователя или автосохранением.
  • Для элемента, который можно отправить (например, элемент почты, элемент встречи или элемент контакта), элемент не имеетбыло отправлено.
  • Разговоры отключены через реестр Windows.
  • Хранилище не поддерживает просмотр бесед (например, Outlook работает в классическом онлайн-режиме с версией Microsoft Exchange ранее, чемMicrosoft Exchange Server 2010).Используйте свойство IsConversationEnabled объекта Store, чтобы определить, поддерживает ли хранилище представление Conversation.
...