Добрый день. Есть ящик на yandex, в нем 16000 входящих и 4000 исходящих сообщений. Задача: сохранить на локальный диск все вложения, как во входящих, так и в исходящих сообщениях. С входящими справился довольно легко: в microsoft outlook добавил учетную запись, настроил pop3, скачались все входящие сообщения. Добавил скрипт (редактор можно открыть по Alt+F11):
Sub СохранитьВсеВложения()
Dim myApp As Outlook.Application
Dim myFolder As Outlook.MAPIFolder
Set myOlApp = CreateObject("Outlook.Application")
Set myNameSpace = myOlApp.GetNamespace("MAPI")
Set myFolder = myNameSpace.Folders(6).Folders(2)'нашел нужный ящик из учетных записей в отладчике
DestFolder = "C:\att\"
Dim k As Long
k = 0
If myFolder.Items.Count > 0 Then
For i = 1 To myFolder.Items.Count
If (myFolder.Items(i).Attachments.Count > 0) And TypeName(myFolder.Items(i)) <> "ReportItem" Then
dateOfMailItem = Format(myFolder.Items(i).SentOn, "yyyy.mm.dd")
On Error GoTo 0
For j = 1 To myFolder.Items(i).Attachments.Count
myFolder.Items(i).Attachments.Item(j).SaveAsFile DestFolder & dateOfMailItem & " " & myFolder.Items(i).Attachments.Item(j).FileName
On Error GoTo 0
k = k + 1
Next j
End If
Next i
End If
MsgBox ("Done! " & k & " files")
End Sub
В названия файлов добавлял дату отправки сообщений. Пришлось отфильтровать по типу сообщений (ReportItem - уведомление о прочтении, у которого нет параметра SentOn).
Осталось разобраться с исходящими, насколько я понимаю почтовые клиенты не скачивают исходящие с сервера. Как можно обработать исходящие сообщения?
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.