Я работаю над приложением, которое захватывает некоторые события Outlook. Можно ли обнаружить событие, когда отправлено электронное письмо. Я не имею в виду, когда пользователь нажимает кнопку «отправить», но когда сообщение действительно отправляется и больше не находится в папке «Исходящие». Заранее спасибо.Захват, когда действительно отправлено письмо
UPDATE
мне удалось захватить Items.ItemAdd
события на присланной папке почт. Для того, чтобы проверить, является ли добавлен последний адрес электронной почты в папке исходящих это один я interestd в Я попытался это:
STDMETHODIMP CItemsEventListener::HandleItemAdd(CString p_date, CString p_time)
{
CComPtr<Outlook::_Application> spApplication;
CComPtr<Outlook::_NameSpace> spSession;
CComPtr<Outlook::MAPIFolder> spSentMailsFolder;
CComPtr<Outlook::_Items> pSentboxItems;
spSentMailsFolder->get_Items(&pSentboxItems);
CComPtr<Outlook::_MailItem> pSentMail;
pSentMail = pSentboxItems->GetLast();
//do staff
return S_OK;
}`
Я получаю ошибку компиляции:
error C2660: 'Outlook::_Items::GetLast' : the function doesn't take 0 arguments
Какой аргумент должен Я перехожу к функции?
Спасибо за ваш ответ @Dimtry, я никогда не работал с событиями и папками Outlook, для других событий, таких как SyncEvents и событий приложений, я реализую интерфейс IDispatch. Тот же подход будет работать для события Items.ItemAdd? Какие шаги я должен выполнить. Я искал примеры, но я нашел только примеры VB или надстройки, но я разрабатываю отдельное приложение C++. – Kira
Если вы импортируете библиотеку объектов объектной модели Outlook, вы должны получить классы-оболочки, которые отображают события. В противном случае вы можете сделать это на низком уровне (QI - объект, который вызывает события для IConnectionPointerContainer, вызывает IConnectionPointerContainer :: FindConnectionPoint, передавая соответствующий идентификатор события dispinterfaace GUID, вызывает IConnectionPointer :: Консультирует передачу вашей реализации интерфейса IDispatch, которая будет получать уведомления о событиях через IDispatch :: Invoke) –
Спасибо @ Dimtry, моя жизнь как обычно :) ты мне очень помог – Kira