Я разрабатываю функциональность, которая будет читать все письма из почтового ящика и обрабатывать файлы вложений.
Когда какая-либо почта отправляется из Outlook, ее вложение сохраняется как winmail.dat. [Обратите внимание, что у меня уже есть код для загрузки вложений с использованием IMAP PHP. Мои вложения электронной почты хранятся в одной папке в моей кодовой базе на сервере.] Мне нужно извлечь вложение winmail.dat в исходный формат. Решения, с которыми я сталкивался до сих пор, требуют ручных усилий, таких как онлайн-инструмент, который предоставляет извлеченные файлы или программное обеспечение, которое позволяет нам конвертировать файлы .DAT.
Но мне нужно извлечь сценарий или любой автоматизированный процесс, например, cron или что-то в этом роде. [Я использую сервер Linux – centos 5.7.]
Есть ли какая-либо библиотека или какой-либо другой способ для моего приложения «распаковать» файлы тезисов, чтобы я мог получить вложения БЕЗ ПРОИЗВЕДЕНИЯ ВПЕРЕДИНО один за другим?
Благодаря!
Загрузите пакет rpm из http://pkgs.org/centos-5-rhel-5/flexbox-x86_64/tnef-1.4.7-1.x86_64.rpm.html.
используйте Пакет: tnef-1.4.7-1.x86_64.rpm
Монтаж:
Скопируйте в папку и установите пакет rpm tnef –
rpm -ivh /path-of-downloaded-package/tnef-1.4.7-1.x86_64.rpm
Чтобы извлечь вложение [winmail.dat]:
Перейдите в каталог, в котором вы хотите извлечь файлы вложений.
cd /path-to-extract-attachment/
Команда Run:
tnef /path-of-attachment/winmail.dat
Эквивалентный скрипт PHP:
chdir('/path-to-extract-attachment/'); $cmd = "tnef /path-of-attachment/winmail.dat"; shell_exec($cmd);
Я чувствую твою боль; работа с проприетарными системами, которая игнорирует существующие широко установленные стандарты, – это боль в *. На странице wikipedia на TNEF есть список библиотек, которые направлены на предоставление декодера. Удачи.