Aspose.Email FOSS for .NET एक MIT-लाइसेंस्ड, निर्भरता-रहित C# लाइब्रेरी है जो Microsoft Outlook .msg फ़ाइलों, Compound File Binary (CFB) कंटेनरों, और EML संदेशों के साथ काम करने के लिए है। एकल NuGet पैकेज जोड़ें और तुरंत ईमेल संदेशों को पढ़ना, बनाना और प्रोसेस करना शुरू करें, बिना Microsoft Outlook या किसी स्वामित्व वाले रनटाइम को स्थापित किए।
लाइब्रेरी दो स्तरों की पहुँच प्रदान करती है। निम्न स्तर पर, CfbReader और CfbWriter CFB बाइनरी कंटेनरों पर पूर्ण नियंत्रण देते हैं — निर्देशिका प्रविष्टियों को पार करना, स्टोरेज नोड्स और स्ट्रीम डेटा को पढ़ना और लिखना, और कच्चे सेक्टर लेआउट का निरीक्षण करना। MsgReader और MsgWriter CFB के ऊपर MSG फ़ॉर्मेट को संभालते हैं, MAPI प्रॉपर्टी स्ट्रीम, प्राप्तकर्ता तालिकाएँ, और अटैचमेंट सब-स्टोरेज को उजागर करते हैं। उच्च स्तर पर, MapiMessage आपको शून्य से नए संदेश बनाने, विषय, बॉडी, प्रेषक और प्राप्तकर्ताओं को पढ़ने, अटैचमेंट प्रबंधित करने, और निर्मित MIME कार्यान्वयन के माध्यम से MSG और EML फ़ॉर्मेट के बीच रूपांतरण करने की अनुमति देता है।
लाइब्रेरी .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 के साथ CFB दस्तावेज़ बनाएं और CfbWriter.ToBytes() या CfbWriter.WriteFile() के माध्यम से बाइट्स या फ़ाइल में सीरियलाइज़ करें।CfbStorage और CfbStream नोड्स को संलग्न करें।.msg फ़ाइलों के लिए कंटेनर फ़ॉर्मेट है — सीधे CFB एक्सेस से फॉरेंसिक निरीक्षण और मरम्मत संभव होती है।MsgReader.FromFile() या MsgReader.FromStream() के साथ खोलें और अंतर्निहित MAPI प्रॉपर्टी स्ट्रीम, प्राप्तकर्ता रिकॉर्ड, और अटैचमेंट सब-स्टोरेज तक पहुंचें।MsgDocument से MSG फ़ाइलें उत्पन्न करें MsgWriter.ToBytes() या MsgWriter.WriteFile() के साथ।MsgStorage, MsgStream, और MsgStorage.FindStream() के माध्यम से पढ़ें।MsgStorage.FindStream() और MsgStorage.FindStorage() का उपयोग करके नामित उप‑एंट्रीज़ खोजें।.msg फ़ाइलों को बल्क-रीड करें और मेटाडेटा या अटैचमेंट निकालें।.msg फ़ाइलें बनाएं और उन्हें Outlook-आधारित मेल सिस्टम्स में वितरित करें।MapiMessage.Create(subject, body) के साथ, SenderName, SenderEmailAddress, और HtmlBody सेट करें।To, Cc, and Bcc recipients via AddRecipient() with email address and display name.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 को 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 फ़ाइल लोड करें और इसे बिल्ट‑इन 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);