![]() |
Извлечь информацию из файлов .msg
Всем привет!
Имеется папка, в которой много сохраненных писем из Outlook. Расширение .msg Каким образом можно выдернуть информацию по каждому файлу и сохранить например в txt или csv. Интересует: 1. Тема письма или можно имя файла (они совпадают); 2. Дата сообщения (поле "Отправлено"). Заранее спасибо! |
Выложите пару-тройку *.msg, упаковав их в архив, и укажите для каждого из образцов «Дату сообщения».
|
В архиве 2 письма.
Даты писем: Чт 24.12.2015 8:56 Чт 24.12.2015 8:57 |
PowerShell + Outlook:
Код:
$outlook = New-Object -comobject outlook.application Код:
SenderEmailAddress : dahiko@mail.ru |
Работает, но результат выводится в строки. Как сделать, чтобы выводилось в столбец?
Например: SenderEmailAddress, To, Subject, SentOn @mail.ru, Vasya Pupkin, Тест2, 12/24/2015 5:56:32 AM |
Код:
Get-ChildItem C:\msg\ -Filter *.msg| ForEach-Object{ |
Добавил выгрузку в файл. В итоге получилось так:
Код:
$outlook = New-Object -comobject outlook.application Вопрос решен. |
Вопрос только со временем. Там случайно даты не по Гринвичу хранятся (по идее, именно в UTC должны)? Не надо ли делать пересчёт на локальное время (у меня под WSH время так же отдавалось в 5 часов, а не в восемь)?
|
Подскажите, а реально ли извлечь файл прикрепленный ?
|
Выложете Ваши образцы сообщений — попробуем.
|
DeathMan2k4, когда у меня встал такой вопрос я решил только через использование сторонней программы с вызовом через bat
Код:
"C:\Program Files (x86)\TotalMailConverter\MailConverter.exe" "%PUT%" "%PUT%" -kfs -c XHTML -template "[nn]. [date] - [subject]" -sender:off -rcpt:off -subject:off -attach -iattach:off -images:off -msg:off -dpi 300 -pc M -PDFAuthor Softplicity -pdfver 1.4 -TM 1 -LM 1 -BM 1 -RM 1 -ps A4 -tc G4 -tjq 80 -HeadText "Page [page]" -HeadAlign c -HeadFont Tahoma -HeadSize 10 -FootText [date] -FootAlign c -FootFont Tahoma -FootSize 10 -r |
Цитата:
|
Всем привет!
Этот скрипт почему-то перестал работать. Последний раз им пользовался примерно год назад. Возможно офис обновился и что-то надо подправить? Код:
$outlook = New-Object -comobject outlook.application Код:
Исключение при вызове "CreateItemFromTemplate" с "1" аргументами: "Невозможно привести COM-объект типа "Microsoft.Office.Interop.Outlook.ApplicationClass" к интерфейсному 1. "-comobject" менять на "-com". Прочитал на одном из форумов, что должно помочь с более новыми версиями Office, но не помогло. 2. В реестре удалять все разделы с именем 00063001-0000-0000-C000-000000000046. Прочитал на одном форуме, что это может остатки от прошлой версии Office, которые мешают. Но не помогло. Вот здесь прочитал, что похожая проблема вызвана тем ,что разные версии Office и Skype установлены. Да это так. Office 2013, а Skype 2016. Обходное решение, которое там описано, оно не помогает. После удаления ветки реестра HKEY_CLASSES_ROOT\TypeLib\{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}\2.8 та же ошибка. |
Время: 22:39. |
Время: 22:39.
© OSzone.net 2001-