Извлечение данных вложенных объектов
Иногда встроенные OLE‑данные представлены как вложение "oleData.mso" MapiAttachment и требуется извлекать вручную. Эти файлы oleData.mso находятся в формате Microsoft Computer Document File (MCDF), и поддержка таких файлов выходит за пределы возможностей Aspose.Email. Тем не менее, Aspose.Email может использоваться в сочетании с другими open‑source библиотеками, такими как 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
- Прочитайте поток с CONTENTS
- Сохраните содержимое в FileStream