2008-10-02 2 views
0

Моя надстройка Outlook обрабатывает событие NewInspector объекта Inspector, чтобы отобразить пользовательскую форму для элемента почты.Неизвестный Outlook MailItem EntryID

Я могу получить идентификатор объекта CurrentItem объекта Inspector, который передается как параметр события. Но проблема в том, что идентификатор EntryID текущего почтового элемента короче, чем он должен быть, и неизвестен. Я знаю каждый EntryID каждого созданного почтового элемента, и я вижу, что конкретный почтовый элемент имеет неправильный идентификатор входа.

Что не так?

ответ

3

Идея состоит в том, чтобы помнить каждый идентификатор входа MailItem, который был создан надстройкой, чтобы впоследствии его можно было обработать по-другому. Проблема заключалась в том, что идентификатор EntryID, открытый Инспектором, был коротким, а не в списке запомненных идентификаторов, хотя это должно быть.

Несколько строк кода, где я создавал почтовый пункт были:

item.Save(); 
item.Move(some_folder); 
items_list.Add(item.EntryID); 

Папка «some_folder» находится внутри внешнего не по умолчанию PST, поэтому почтовый элемент получает новый EntryID. Я сменил эти строки на:

item.Save(); 
item = (Outlook.MailItem)item.Move(some_folder); 
items_list.Add(item.EntryID); 

Теперь у предмета есть новый идентификатор EntryID, который можно найти позже.

+0

Если вы делаете сохранение, вы всегда можете просто пометить mailItem с помощью userProperty и затем искать его позже. Многие люди используют поля пробега/биллинга для такого рода вещей, но, очевидно, если у вас есть другие дополнения, вы можете столкнуться! Таким образом, пользовательские свойства, как правило, лучше. – 76mel 2010-01-29 09:22:31

Смежные вопросы