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.
CfbReader.FromFile()، CfbReader.FromStream() أو new CfbReader(data).IterStorages()، IterStreams()، IterChildren()، وIterTree().ResolvePath(names) لتحديد تدفق معين عبر سلسلة الأسماء.CfbDocument وتسلسلها إلى بايتات أو ملف عبر CfbWriter.ToBytes() أو CfbWriter.WriteFile().CfbStorage وCfbStream إلى أي عقدة تخزين قبل التسلسل..msg — يتيح الوصول المباشر إلى CFB فحصًا جنائيًا وإصلاحًا.MsgReader.FromFile() أو MsgReader.FromStream() واطّلع على تدفقات خصائص MAPI الأساسية، سجلات المستلمين، وتخزينات المرفقات الفرعية.MsgDocument باستخدام MsgWriter.ToBytes() أو MsgWriter.WriteFile().MsgStorage، MsgStream، وMsgStorage.FindStream().MsgStorage.FindStream() و MsgStorage.FindStorage() لتحديد المواقع الفرعية المسماة..msg من أدلة الأرشيف واستخراج البيانات الوصفية أو المرفقات..msg برمجيًا وتسليمها إلى أنظمة البريد القائمة على Outlook.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().message.Attachments، واحفظ كل attachment.Data إلى القرص.message.Subject، message.Body، message.SenderEmailAddress، وmessage.Recipients دون أتمتة COM..eml قياسي (RFC 5322 / MIME) إلى كائن MapiMessage كامل عبر MapiMessage.LoadFromEml(stream).MapiMessage مرة أخرى إلى تنسيق MIME باستخدام message.SaveToEml() أو message.SaveToEml(stream)..eml و .msg إلى تنسيق واحد..eml في الاختبارات والتحقق من أنها تنجو من جولة 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.
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 قياسي واحفظه كملف 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);