Видобування даних вбудованих об’єктів
Іноді вбудовані 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