الميزات
نظرة عامة على الميزة
Aspose.Email FOSS للـ C++ يوفر واجهة برمجة تطبيقات طبقية للعمل مع ملفات Outlook MSG و حاويات Compound File Binary (CFB). المكتبة تحتوي على 26 فئة عامة عبر نظامين فرعيين: CFB و MSG/MAPI.
وصول حاوية CFB
يقرأ نظام CFB الفرعي ويكتب تنسيق Microsoft Compound File Binary — تنسيق الحاوية الأساسي لملفات Outlook .msg.
| الفئة | الغرض |
|---|---|
cfb_reader | فتح وتصفح ملفات CFB الموجودة |
cfb_writer | تحويل مستندات CFB إلى بايتات أو ملفات |
cfb_document | تمثيل ملف CFB في الذاكرة |
cfb_node | عقدة تخزين أو تدفق فردية في شجرة الدليل |
cfb_storage | إدخال تخزين مسمى |
cfb_stream | تدفق مسمى يحتوي على بيانات ثنائية |
العمليات الأساسية:
- فتح من ملف أو تدفق أو بايتات:
cfb_reader::from_file(),cfb_reader::from_stream(),cfb_reader::from_bytes(),cfb_reader::from_buffer() - تعداد المحتويات:
storage_ids(),stream_ids(),child_ids(),directory_entry_count() - التنقل حسب المسار:
find_child_by_name(),resolve_path() - فحص العقد:
cfb_node::is_storage(),cfb_node::is_stream(),creation_time(),modified_time() - كتابة الحاويات:
cfb_writer::to_bytes(),cfb_writer::write_file(),cfb_writer::write_stream()
قراءة وكتابة ملف MSG
يتعامل نظام MSG الفرعي مع تنسيق رسائل Outlook فوق CFB.
| الفئة | الغرض |
|---|---|
msg_reader | فتح وتحليل ملفات MSG |
msg_writer | تسلسل مستندات MSG |
msg_document | تمثيل في الذاكرة لملف MSG |
العمليات الأساسية:
- فتح ملفات MSG:
msg_reader::from_file(),msg_reader::from_stream() - فحص البيانات الوصفية:
msg_document::major_version(),msg_document::minor_version(),msg_document::strict() - كتابة ملفات MSG:
msg_writer::to_bytes(),msg_writer::write_file(),msg_writer::write_stream() - تحويل إلى CFB:
msg_document::to_cfb_document()للوصول منخفض المستوى إلى CFB
واجهة برمجة تطبيقات الرسائل MAPI عالية المستوى
توفر الفئة mapi_message واجهة عالية المستوى لإنشاء وقراءة وتحويل رسائل البريد الإلكتروني.
إنشاء الرسائل:
mapi_message::create()— بناء رسالة جديدة بالموضوع والنصset_subject()،set_body()،set_html_body()— تعيين محتوى الرسالةset_sender_name()،set_sender_email_address()،set_sender_address_type()— تعيين المرسلset_internet_message_id()— تعيين رأس Message-IDset_message_class()— تعيين فئة رسالة MAPIunicode_strings()/set_unicode_strings()— التحكم في ترميز سلسلة Unicode
جارٍ تحميل الرسائل:
mapi_message::from_file()— تحميل من مسار ملفmapi_message::from_stream()— تحميل من تدفق إدخالmapi_message::from_msg_document()— تحميل منmsg_document
حفظ الرسائل:
save()— تسلسل إلى بايتات أو تدفق أو ملفto_msg_document()— تحويل إلىmsg_documentللوصول منخفض المستوى
المرفقات:
mapi_attachment::from_bytes(),mapi_attachment::from_stream()— تحميل بيانات المرفقmapi_attachment::is_embedded_message()— التحقق مما إذا كان المرفق رسالة MSG مدمجةmapi_attachment::load_data()— تحميل محتوى المرفق بشكل كسول
خصائص MAPI:
mapi_property::property_id(),property_type(),property_tag()— تحديد الخاصيةmapi_property::set_value(),flags(),set_flags()— معالجة الخاصيةmapi_property_collection::remove()— إزالة الخصائص من مجموعة
تحويل EML و MIME
تحويل بين تنسيق Outlook MSG وملف EML القياسي (RFC 5322 / MIME):
mapi_message::load_from_eml()— تحليل ملف.emlإلىmapi_messagemapi_message::save_to_eml()— تسلسلmapi_messageإلى تنسيق EML
يتم الحفاظ على الموضوع والنص والمرسل والمستلمين والمرفقات عبر عمليات النقل المتكررة.
القوائم المعدودة والثوابت
| تعداد | الغرض |
|---|---|
common_message_property_id | معرفات خصائص MAPI القياسية (الموضوع، النص، المرسل، المرفقات) |
property_type_code | رموز نوع خصائص MAPI (عدد صحيح، سلسلة، ثنائي، وقت، GUID) |
msg_storage_role | أدوار التخزين داخل ملفات MSG (رسالة، مستلم، مرفق) |
directory_object_type | أنواع إدخالات دليل CFB (تخزين، تدفق، جذر) |
directory_color_flag | أعلام ألوان شجرة الأحمر-الأسود لإدخالات دليل CFB |
sector_marker | قيم القطاعات الخاصة في جداول تخصيص ملفات CFB |