Делаю я автообработчик почты (через CDO).
Прога периодически подключается к ящику, проверяет новые письма. Если есть новые письма с определенной темой, то она проверяет отправителя и, если он входит в список допустимых адресов, автоматически отвечает ему.
Проблема именно с определением адреса отправителя.
Код по существу такой:
- Код: Выделить всё
For Each mapiMessage In mapiSession.Inbox.Messages
If mapiMessage.Unread Then
Set mapiAE = mapiMessage.Sender
If mapiAE.Type = "SMTP" Then
If mapiAE.Address ... Then
...
End If
End If
End If
Next mapiMessage
Проблема в строчке Set mapiAE = mapiMessage.Sender -- как только доходит до ее выполнения, тут же выскакивает окошко от Outlook, мол какая-то программа хочет заполучить информацию из адресной книги, возможно это вирус, разрешить или нет?
Как потушить эту сволочь? У меня Office XP, дело наверное именно в этом. Совсем отключать такую защиту я не хочу, уверен, что проблема разрешится авторизацией, но я не нашел, как и где.
Так же не подходит вариант "подключайся через POP3 и сам получай почту", т.к. почта корпоративная и забирается с Exchange.
Что удивляет -- можно без проблем узнать тему письма и его содержимое, добраться до аттачей, но адрес узнать -- ни-ни