У меня возникла проблема: при добавлении пользовательского UserProperty
в Outlook MailItem
он не синхронизируется с другими подключенными Outlook.VSTO Outlook Пользовательские свойства (пользовательские) не синхронизируются
Что я могу сделать, чтобы заставить Outlook синхронизировать всю электронную почту?
Моей Overal проблема: У меня есть общий почтовый ящик обмена, открытая на два клиентов (в Outlook) Я хотел бы, чтобы заблокировать почтовый пункт, если он будет открыт в одном из Outlook, и показать второй прогноз пользователь сообщение «Пользователь XX в настоящее время читает это электронное письмо»
Мой способ решить эту проблему: Создание плагина Outlook. Когда пользователь «A» открывает электронную почту, я добавляю «LockingUser» UserProperty
к объекту MailItem
. Если пользователь «B» пытается открыть электронную почту, я сначала смотрю, существует ли свойство «LockingUser». У меня отключен режим кэширования. Я пытался обновить тему сообщения электронной почты: это отлично работает и получает синхронизировано немедленно (но это не решение моей проблемы)
private void SetLockingUser(Outlook.MailItem mail)
{
var lockingUserProperty = mail.UserProperties.Find("LockingUser");
if (lockingUserProperty != null)
{
MessageBox.Show("Email locked by: " + lockingUserProperty.Value);
return;
}
var identity = System.Security.Principal.WindowsIdentity.GetCurrent();
var username = identity != null ? identity.Name : "";
lockingUserProperty = mail.UserProperties.Add("LockingUser", Outlook.OlUserPropertyType.olText, false, 1);
lockingUserProperty.Value = username;
mail.Save();
}
Спасибо! Я обновил свой вопрос: я работаю в не кешированном режиме. Когда я меняю тему письма, она синхронизируется сразу (1-2 секунды), поэтому я предполагаю, что нужно также синхронизировать другую информацию !? – Gerwald
Если у другого пользователя есть одно и то же сообщение, открытое или указанное в коде, Outlook не увидит изменения до тех пор, пока сообщение не будет полностью разыменовано и не будет повторно открыто. Вы можете увидеть изменения в другом почтовом ящике в OutlookSpy (нажмите кнопку «Сообщение»)? –