Aspose.Email FOSS for .NET एक MIT-अनुज्ञा प्राप्त, निर्भरता मुक्त C# लाइब्रेरी है जो Microsoft Outlook .msg फ़ाइलों, कंपाउंड फाइल बाइनरी (CFB) कंटेनरों और EML संदेशों के साथ काम करने के लिए है। एक एकल NuGet पैकेज जोड़ें और तुरंत पढ़ना शुरू करें, बनाना, और ईमेल संदेश को संसाधित करना माइक्रोसॉफ्ट आउटलुक या किसी भी मालिकाना रनटाइम स्थापित किए बिना.
पुस्तकालय दो स्तरों का उपयोग प्रदान करता है। निम्न स्तर पर, CfbReader और CfbWriter CFB बाइनरी कंटेनरों पार निर्देशिका प्रविष्टियों, पढ़ने और लिखने के लिए भंडारण नोड्स और स्ट्रीम डेटा, और कच्चे क्षेत्र लेआउट की जांच करें. MsgReader तथा MsgWriter CF B के ऊपर MSG प्रारूप को संभालते हैं, MAPI संपत्ति धाराओं, प्राप्तकर्ता तालिकाओं और अनुलग्नक उप-भंडारण को उजागर करते हैं। उच्च स्तर में,MapiMessage आपको स्क्रैच से नए संदेश बनाने, पढ़ना, शरीर, प्रेषक और विषय, अनुबंधों और एमएसजी और ईएमएलआईएमई प्रारुप के बीच परिवर्तित करने देता है एक अंतर्निर्मित एमआईमी कार्यान्वयन।
पुस्तकालय .NET 8.0 या बाद के लक्ष्य पर है और इसमें कोई देशी निर्भरता नहीं है, जो इसे विंडोज, लिनक्स, मैकओएस, डॉकर कंटेनरों और सर्वरलेस कार्यों के लिए उपयुक्त बनाता है। अतिरिक्त सुविधाओं और वाणिज्यिक समर्थन के लिये Aspose.Email for .NET देखें।
CfbReader.FromFile(), CfbReader.FromStream() या new CfbReader(data) के माध्यम से एक फाइल पथ, स्ट्रीम, या बाइट सरणी से मौजूदा CFB कंटेनर लोड करें।IterStorages(), IterStreams() , IterChildren() और IterTree() का उपयोग करके भंडारण, धाराओं और बच्चों को पुनरावृत्ति करें।ResolvePath(names) के साथ नेस्टेड स्टोरेज पदानुक्रमों में नेविगेट करें नाम श्रृंखला द्वारा एक विशिष्ट धारा को खोजने के लिए.CfbDocument के साथ प्रोग्रामेटिक रूप से CF B दस्तावेज़ बनाएं और CfbWriter.ToBytes() या CfbWriter.WriteFile() के माध्यम से बाइट्स या फ़ाइल में क्रमबद्ध करें।CfbStorage तथा CfbStream नोड्स संलग्न करें..msg फाइलों के लिए कंटेनर प्रारूप है सीएफबी प्रत्यक्ष पहुँच फोरेंसिक निरीक्षण और मरम्मत सक्षम बनाता है.MsgReader.FromFile() या MsgReader.FromStream() के साथ Outlook MSG फाइल खोलें और अंतर्निहित MAPI गुण धाराओं, प्राप्तकर्ता रिकॉर्ड्स, और अनुलग्नक उप-भंडारण तक पहुंचें.MsgDocument से MsgWriter.ToBytes() या MsgWriter.WriteFile() के साथ MS G फाइलें उत्पन्न करें।MsgStorage, MsgStream और MsgStorage.FindStream() के माध्यम से शीर्ष-स्तर की संपत्ति धाराओं, नामित गुणों और संलग्न डेटा को पढ़ें।MsgStorage.FindStream() और MsgStorage.FindStorage() का उपयोग करें..msg फ़ाइलों और मेटाडेटा या संलग्नकों को निकालें..msg फ़ाइलों को प्रोग्रामेटिक रूप से बनाएं और उन्हें आउटलुक-आधारित मेल सिस्टम में वितरित करें.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 तक पहुंच।.eml फ़ाइल (RFC 5322 / MIME) को MapiMessage.LoadFromEml(stream) के माध्यम से पूर्ण MapiMessage ऑब्जेक्ट में पार्स करें।MapiMessage को message.SaveToEml() या message.SaveToEml(stream) के साथ MIME फ़ॉर्मेट में फिर से सीरियलाइज़ करें।.eml और .msg फ़ाइलों के मिश्रित संग्रह को एक ही प्रारूप में सामान्य करें..eml फिक्स्चर उत्पन्न करें और सत्यापित करें कि वे डेटा हानि के बिना एमएसजी दौरे-यात्रा को जीवित रखते हैं।एक स्ट्रीम से 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);
प्रेषक, प्राप्तकर्ता और संलग्नक के साथ एक पूर्ण ईमेल बनाएं, फिर इसे एमएसजी फ़ाइल में लिखें।
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 फ़ाइल लोड करें और इसे अंतर्निहित MIME पार्सर का उपयोग करके Outlook .msg फाइल के रूप में सहेजें.
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);