Обработка событий в Outlook
От: amigo421  
Дата: 22.12.04 16:45
Оценка:
Всем привет.
У меня такая задача. в MS Outlook 2003 при выборе мыла пользователем нужно просматривать кастомные свойства мыла, если оно (свойство) там обнаружиться то добавить в body этого мыла немного текста.
Теперь что я пишу:
Подключился к событию SelectionChanged у объекта Explorer'a
Соотв-но обработчик:
void __stdcall CAddin::OnSelChanged()
{
_ExplorerPtr spExpl;
MAPIFolderPtr spFld;
OlItemType itemType;
SelectionPtr slc;
long count;
_MailItemPtr mail;
BSTR senderEmail;

m_spApp->ActiveExplorer(&spExpl);
spExpl->get_CurrentFolder(&spFld);
spFld->get_DefaultItemType(&itemType);
if (itemType != olMailItem)
return;
spExpl->get_Selection(&slc);
slc->get_Count(&count);
for (long i=1; i<=count; i++) {
slc->Item(_variant_t(i), (IDispatch**)&mail);
mail->get_SenderEmailAddress(&senderEmail);
..........
}
}
на строчке mail->get_SenderEmailAddress(&senderEmail); происходит исключение.
здесь нет кода для его отлова поэтому Outlook после такого кода просто дальше работает.
соотв-но нужные мне действия
...................
не происходят.
на самом деле я так понимаю объект mail некорректно взялся. В принципе любой его метод приводит ошибке.
Подскажите плз кто знает в чем ошибка.
Кстати это не может быть связано как-то с секьюрностью? Имею ввиду когда Outlook спрашивает разрешаем или нет на X минут доступ для запросившего приложения? Кстати этот код почемуто не вызвал такого сообщения

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

22.12.04 20:44: Перенесено модератором из 'Работа — поиск и предложение' — Flamer
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.