1. المنتجات
  2.   Aspose.Email
  3.   Aspose.Email FOSS for .NET

Aspose.Email FOSS لـ .NET

اقرأ وأنشئ وعالج ملفات Outlook MSG وحاويات CFB ورسائل EML من .NET — مجانية ومفتوحة المصدر، دون اعتماد على Microsoft Outlook.

مكتبة .NET مفتوحة المصدر لملفات MSG و CFB و EML

Aspose.Email FOSS for .NET هو مكتبة C# مرخصة بموجب MIT وخالية من الاعتمادات للعمل مع ملفات Microsoft Outlook .msg، وحاويات Compound File Binary (CFB)، ورسائل EML. أضف حزمة NuGet واحدة وابدأ فورًا في قراءة وإنشاء ومعالجة رسائل البريد الإلكتروني دون تثبيت Microsoft Outlook أو أي بيئة تشغيل مملوكة.

توفر المكتبة مستويين من الوصول. على المستوى المنخفض، CfbReader و CfbWriter يمنحان تحكمًا كاملاً في حاويات CFB الثنائية — استعراض إدخالات الدليل، قراءة وكتابة عقد التخزين وبيانات التدفق، وفحص تخطيط القطاع الخام. MsgReader و MsgWriter يتعاملان مع تنسيق MSG فوق CFB، مكشفين عن تدفقات خصائص MAPI، جداول المستلمين، وتخزينات فرعية للمرفقات. على المستوى العالي، MapiMessage يتيح لك إنشاء رسائل جديدة من الصفر، قراءة الموضوع، النص، المرسل، والمستلمين، إدارة المرفقات، وتحويل بين تنسيق MSG و EML عبر تنفيذ MIME مدمج.

تستهدف المكتبة .NET 8.0 أو أحدث ولا تحتوي على تبعيات أصلية، مما يجعلها مناسبة لـ Windows و Linux و macOS وحاويات Docker والوظائف الخالية من الخادم. للحصول على ميزات إضافية ودعم تجاري، راجع Aspose.Email for .NET.

قراءة وكتابة حاوية CFB

  • Open CFB files: تحميل حاويات CFB الموجودة من مسار ملف أو تدفق أو مصفوفة بايت عبر CfbReader.FromFile()، CfbReader.FromStream() أو new CfbReader(data).
  • تصفح شجرة الدليل: قم بتكرار التخزينات، التدفقات، والأطفال باستخدام IterStorages()، IterStreams()، IterChildren()، وIterTree().
  • حل المسارات: تصفح هياكل التخزين المتداخلة باستخدام ResolvePath(names) لتحديد تدفق معين عبر سلسلة الأسماء.
  • كتابة حاويات CFB: إنشاء مستندات CFB برمجيًا باستخدام CfbDocument وتسلسلها إلى بايتات أو ملف عبر CfbWriter.ToBytes() أو CfbWriter.WriteFile().
  • إضافة التخزينات والتدفقات: قم بإرفاق عقد CfbStorage وCfbStream إلى أي عقدة تخزين قبل التسلسل.

أين يُستخدم وصول CFB

  • فحص ملف MSG: CFB هو تنسيق الحاوية لملفات Outlook .msg — يتيح الوصول المباشر إلى CFB فحصًا جنائيًا وإصلاحًا.
  • تنسيقات ثنائية مخصصة: يمكن قراءة أو كتابة أي تطبيق قديم يستخدم CFB لتخزين البيانات دون الاعتماد على COM.
  • استعادة البيانات: تصفح شجرة الدليل الكاملة واستخرج بايتات تدفق البيانات الخام من ملفات CFB التالفة أو غير القياسية.
  • اختبار الجولة الثنائية: تسلسل مستند إلى بايتات وإعادة تحميله للتحقق من التسلسل بدون فقدان في الاختبارات الآلية.

قراءة وكتابة ملف MSG

  • قراءة ملفات MSG: افتح ملفات Outlook MSG باستخدام MsgReader.FromFile() أو MsgReader.FromStream() واطّلع على تدفقات خصائص MAPI الأساسية، سجلات المستلمين، وتخزينات المرفقات الفرعية.
  • اكتب ملفات MSG: إنتاج ملفات MSG من MsgDocument باستخدام MsgWriter.ToBytes() أو MsgWriter.WriteFile().
  • الوصول منخفض المستوى إلى MAPI: قراءة تدفقات الخصائص على المستوى الأعلى، الخصائص المسماة، وبيانات المرفقات عبر MsgStorage، MsgStream، وMsgStorage.FindStream().
  • تصفح تخزين MSG: استخدم MsgStorage.FindStream() و MsgStorage.FindStorage() لتحديد المواقع الفرعية المسماة.

أين يُستخدم معالجة MSG

  • خطوط أنابيب أرشفة البريد الإلكتروني: قراءة جماعية لملفات .msg من أدلة الأرشيف واستخراج البيانات الوصفية أو المرفقات.
  • أدوات الترحيل: تحويل مجموعات MSG إلى صيغ قياسية للاستيراد في الأنظمة غير Outlook.
  • الاكتشاف القانوني: تحليل تدفقات خصائص MAPI الخام لاستخراج جميع حقول الرسائل بما في ذلك الخصائص غير القياسية.
  • تسليم التقارير الآلي: إنشاء ملفات .msg برمجيًا وتسليمها إلى أنظمة البريد القائمة على Outlook.

واجهة برمجة تطبيقات الرسائل عالية المستوى API

  • إنشاء رسائل: بناء بريد إلكتروني كامل باستخدام MapiMessage.Create(subject, body)، وضبط SenderName، SenderEmailAddress، وHtmlBody.
  • إضافة المستلمين: إرفاق To، Cc، وBcc عبر AddRecipient() مع عنوان البريد الإلكتروني واسم العرض.
  • إدارة المرفقات: أضف مرفقات ملفات وتدفقات باستخدام AddAttachment() أو أنشئ كائنات MapiAttachment مباشرةً باستخدام Filename، MimeType، ContentId، وData.
  • حفظ وإعادة التحميل: تسلسل مع message.Save() أو message.Save(stream) وإعادة التحميل مع MapiMessage.FromFile() أو MapiMessage.FromStream().

أين يُستخدم API عالي المستوى

  • إنشاء بريد إلكتروني تلقائي: إنشاء آلاف ملفات MSG مخصصة من سجلات البيانات في وظائف الدُفعات.
  • إنشاء تثبيت اختبار: بناء ملفات MSG جيدة ومعروفة بمحتوى متوقع لاختبارات التكامل.
  • استخراج المرفقات: حمّل ملف MSG، وتكرّر message.Attachments، واحفظ كل attachment.Data إلى القرص.
  • فحص الخاصية: الوصول إلى message.Subject، message.Body، message.SenderEmailAddress، وmessage.Recipients دون أتمتة COM.

تحويل EML و MIME

  • تحميل EML إلى MapiMessage: تحليل ملف .eml قياسي (RFC 5322 / MIME) إلى كائن MapiMessage كامل عبر MapiMessage.LoadFromEml(stream).
  • حفظ MapiMessage كـ EML: تسلسل MapiMessage مرة أخرى إلى تنسيق MIME باستخدام message.SaveToEml() أو message.SaveToEml(stream).
  • دقة الجولة المتبادلة: الموضوع، النص، نص HTML، المرسل، المستلمين، والمرفقات كلها محفوظة خلال جولات EML → MSG → EML.
  • لا محلل MIME خارجي: يتم تنفيذ تحليل EML أصليًا داخل المكتبة — لا توجد تبعية System.Net.Mail مطلوبة.

أين يُستخدم تحويل EML

  • جسر الصيغة: استلام رسائل البريد الإلكتروني كملفات EML من خوادم البريد وتحويلها إلى MSG لتخزين متوافق مع Outlook.
  • الامتثال للمعايير: تحويل ملفات MSG المملوكة إلى MIME القياسي لتسليمها إلى أي وسيلة نقل بريد.
  • تطبيع الأرشفة: قم بتطبيع أرشيف مختلط من ملفات .eml و .msg إلى تنسيق واحد.
  • اختبار سير العمل: إنشاء تركيبات .eml في الاختبارات والتحقق من أنها تنجو من جولة MSG دون فقدان البيانات.

قراءة الموضوع من ملف MSG

افتح ملف Outlook MSG من تدفق واطبع الموضوع — لا يلزم Microsoft Outlook.

using System.IO;
using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("sample.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);

إنشاء وحفظ رسالة MSG

قم بإنشاء بريد إلكتروني كامل مع المرسل، المستلم، والمرفق، ثم احفظه في ملف MSG.

using System.IO;
using Aspose.Email.Foss.Msg;
var message = MapiMessage.Create("Hello", "Body");
message.SenderName = "Alice";
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");
using var attachmentStream = new MemoryStream("abc"u8.ToArray());
message.AddAttachment("note.txt", attachmentStream, "text/plain");
using var output = File.Create("hello.msg");
message.Save(output);

تحويل EML إلى MSG

حمّل ملف .eml قياسي واحفظه كملف Outlook .msg باستخدام محلل MIME المدمج.

using System.IO;
using Aspose.Email.Foss.Msg;
using var input = File.OpenRead("message.eml");
var message = MapiMessage.LoadFromEml(input);
using var msgOutput = File.Create("message.msg");
message.Save(msgOutput);
using var emlOutput = File.Create("roundtrip.eml");
message.SaveToEml(emlOutput);
  

الدعم وموارد التعلم

 العربية