Я написал плагин для Outlook, он будет всплывать в LastModificationTime встречи, пока я нажимаю кнопку
обработчик событий кнопки, как это
Outlook.ApplicationClass outlook = new Outlook.ApplicationClass();
Outlook.NameSpace ns = outlook.GetNamespace("MAPI");
Outlook.MAPIFolder folder = ns.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderCalendar);
Outlook.Items FolderItems = folder.Items;
DateTime MyDate = DateTime.Now;
List<Outlook.AppointmentItem> Appts = (
from Outlook.AppointmentItem i in folder.Items
where i.Start.Month == MyDate.Month && i.Start.Year == MyDate.Year
select i).ToList();
foreach (Outlook.AppointmentItem Appt in Appts)
{
System.Windows.Forms.MessageBox.Show(Appt.LastModificationTime.ToString());
}
проблема произошла, когда я изменил встречу в своем мобильном телефоне, а затем синхронизировал ее с Outlook через сервер обмена
шагов, которые создают проблему:
нажмите кнопку, получите LastModificationTime как "time1"
изменить дату начала на моем мобильном телефоне как «start1», синхронизировать с Outlook через сервер обмена
нажмите кнопку, получите LastModificationTime, по-прежнему "time1"
изменить дату начала на «start2» в Outlook, но встреча по-прежнему на дату «start1».
Перезапуск Outlook
нажмите кнопку, получите новый LastModificationTime в качестве «time2», и встреча назначена на дату «start1», «start2» больше нет.
шагов без проблем
- нажмите кнопку, получите LastModificationTime как "time1"
1,1. перезапустить outlook
изменить дату начала на моем мобильном телефоне как «start1», синхронизировать с Outlook через сервер обмена
нажмите кнопку, получите LastModificationTime, "time2"
Похоже,
Список приложений
никогда не обновляется до последнего значения, если назначение изменено через сервер обмена.
Есть ли решение этой проблемы? или другая причина, чтобы это произошло?