Извлечение данных встроенных объектов

Иногда встроенные данные OLE представлены в виде вложения «OleData.mso» следующим образом MapiAttachment и его нужно извлекать вручную. Эти файлы OleData.mso представляют собой формат файлов компьютерных документов Microsoft (MCDF), и Aspose.Email не может поддерживать такие файлы. Однако Aspose.Email можно использовать в сочетании с другими библиотеками с открытым исходным кодом, такими как OpenMCDF, для чтения содержимого таких файлов для сохранения на диск. Aspose.Email предоставляет InlineAttachmentExtractor класс для перечисления пакетов MSO из двоичных данных oledata.mso, которые затем можно использовать для извлечения содержимого библиотеками чтения Compound Files.

Если тип тела сообщения — HTML (а не RTF) и в сообщении есть объекты OLE, свойство MapiPropertyTag.pr_attach_data_obj отсутствует. В этом случае информация об объектах OLE содержится в oldedata.mso.

Извлечение встроенных объектов

В этой статье показано, как извлечь содержимое из такого файла с помощью Aspose.Email и OpenMCDF. Это можно сделать следующим образом:

  • Перечислите пакеты MSO из двоичных данных вложения oledata.mso
  • для всех данных OLE прочтите CompoundFile
  • Прочитайте трансляцию с КОНТЕНТОМ
  • Сохраните содержимое в FileStream