1. Ürünler
  2.   Aspose.Email
  3.   Aspose.Email FOSS for .NET

Aspose.Email FOSS .NET için

Outlook MSG dosyalarını, CFB konteynerlerini ve EML mesajlarını .NET üzerinden okuyun, oluşturun ve işleyin — ücretsiz ve açık kaynaklı, Microsoft Outlook bağımlılığı yok.

Açık Kaynak .NET Kütüphanesi, MSG, CFB ve EML Dosyaları için

Aspose.Email FOSS for .NET, Microsoft Outlook .msg dosyaları, Compound File Binary (CFB) kapsayıcıları ve EML mesajlarıyla çalışmak için MIT lisanslı, bağımlılıksız bir C# kütüphanesidir. Tek bir NuGet paketi ekleyin ve Microsoft Outlook ya da herhangi bir tescilli çalışma zamanı kurmadan e-posta mesajlarını okumaya, oluşturmaya ve işlemeye hemen başlayın.

Kütüphane iki erişim seviyesi sağlar. Düşük seviyede, CfbReader ve CfbWriter CFB ikili kapsayıcıları üzerinde tam kontrol sunar — dizin girişlerini dolaşın, depolama düğümlerini ve akış verilerini okuyun ve yazın, ve ham sektör düzenini inceleyin. MsgReader ve MsgWriter CFB üzerine MSG formatını işler, MAPI özellik akışlarını, alıcı tablolarını ve ek alt‑depolamalarını ortaya çıkarır. Yüksek seviyede, MapiMessage yeni mesajları sıfırdan oluşturmanıza, konu, gövde, gönderici ve alıcıları okumanıza, ekleri yönetmenize ve yerleşik bir MIME uygulaması aracılığıyla MSG ve EML formatları arasında dönüştürmenize olanak tanır.

Kütüphane, .NET 8.0 ve üzerini hedef alır ve yerel bağımlılıkları yoktur, bu da Windows, Linux, macOS, Docker konteynerleri ve sunucusuz işlevler için uygun olmasını sağlar. Ek özellikler ve ticari destek için, Aspose.Email for .NET bölümüne bakın.

CFB Konteyner Okuma ve Yazma

  • Open CFB files: Mevcut CFB konteynerlerini dosya yolu, akış veya bayt dizisi üzerinden CfbReader.FromFile(), CfbReader.FromStream() veya new CfbReader(data) ile yükleyin.
  • Dizin ağacını dolaşın: Depolamaları, akışları ve alt öğeleri IterStorages(), IterStreams(), IterChildren() ve IterTree() kullanarak yineleyin.
  • Yolları çöz: ResolvePath(names) ile iç içe depolama hiyerarşilerinde gezinerek ad zinciriyle belirli bir akışı bulun.
  • CFB kapsayıcılarını yazın: CFB belgelerini CfbDocument ile programlı olarak oluşturun ve CfbWriter.ToBytes() veya CfbWriter.WriteFile() aracılığıyla baytlara veya dosyaya serileştirin.
  • Depolama birimleri ve akışlar ekleyin: Serileştirmeden önce herhangi bir depolama düğümüne CfbStorage ve CfbStream düğümlerini ekleyin.

CFB Erişiminin Kullanıldığı Yer

  • MSG dosyası incelemesi: CFB, Outlook .msg dosyaları için kapsayıcı formatıdır — doğrudan CFB erişimi, adli inceleme ve onarımı mümkün kılar.
  • Özel ikili formatlar: CFB’yi veri depolama için kullanan herhangi bir eski uygulama, COM bağımlılığı olmadan okunabilir veya yazılabilir.
  • Veri kurtarma: Tam dizin ağacını dolaşın ve hasarlı veya standart dışı CFB dosyalarından ham akış baytlarını çıkarın.
  • Binary round-trip testing: Bir belgeyi baytlara serileştirip yeniden yükleyerek otomatik testlerde kayıpsız serileştirmeyi doğrulayın.

MSG Dosyası Okuma ve Yazma

  • Read MSG files: Outlook MSG dosyalarını MsgReader.FromFile() veya MsgReader.FromStream() ile açın ve temel MAPI özellik akışlarına, alıcı kayıtlarına ve ek alt depolarına erişin.
  • MSG dosyaları yazın: Bir MsgDocument üzerinden MsgWriter.ToBytes() veya MsgWriter.WriteFile() ile MSG dosyaları oluşturun.
  • Düşük seviyeli MAPI erişimi: Üst düzey özellik akışlarını, adlandırılmış özellikleri ve ek verilerini MsgStorage, MsgStream ve MsgStorage.FindStream() aracılığıyla okuyun.
  • MSG storage navigation: Adlandırılmış alt girişleri bulmak için MsgStorage.FindStream() ve MsgStorage.FindStorage() kullanın.

MSG İşleme Nerede Kullanılır

  • Email archival pipelines: Arşiv dizinlerinden .msg dosyalarını toplu olarak okuyun ve meta verileri veya ekleri çıkarın.
  • Migration tools: MSG koleksiyonlarını, Outlook dışı sistemlere içe aktarma için standart formatlara dönüştürün.
  • Hukuki keşif: Ham MAPI özellik akışlarını ayrıştırarak standart dışı özellikler dahil tüm mesaj alanlarını çıkarın.
  • Otomatik rapor teslimi: .msg dosyalarını programlı olarak oluşturun ve Outlook tabanlı posta sistemlerine teslim edin.

Yüksek Düzey Mesaj API

  • Mesajları oluştur: Tam bir e-posta oluşturun MapiMessage.Create(subject, body) ile, SenderName, SenderEmailAddress ve HtmlBody ayarlayın.
  • Alıcıları ekle: Alıcıları To, Cc ve Bcc AddRecipient() aracılığıyla e-posta adresi ve görüntülenen ad ile ekleyin.
  • Ekleri yönetin: Dosya ve akış eklerini AddAttachment() ile ekleyin veya MapiAttachment nesnelerini doğrudan Filename, MimeType, ContentId ve Data ile oluşturun.
  • Kaydet ve yeniden yükle: message.Save() veya message.Save(stream) ile serileştirin ve MapiMessage.FromFile() veya MapiMessage.FromStream() ile yeniden yükleyin.

Yüksek Seviyeli API Nerede Kullanılır

  • Otomatik e-posta oluşturma: Toplu işlerde veri kayıtlarından binlerce kişiselleştirilmiş MSG dosyası oluşturun.
  • Test fixture creation: Bilinen iyi MSG dosyalarını, entegrasyon test takımları için öngörülebilir içerikle oluşturun.
  • Ek çıkarma: Bir MSG dosyası yükleyin, message.Attachments üzerinde yineleyin ve her attachment.Datai diske kaydedin.
  • Özellik denetimi: COM otomasyonu olmadan message.Subject, message.Body, message.SenderEmailAddress ve message.Recipients‘e erişin.

EML ve MIME Dönüştürmesi

  • Load EML into MapiMessage: Standart bir .eml dosyasını (RFC 5322 / MIME) tam bir MapiMessage nesnesine MapiMessage.LoadFromEml(stream) aracılığıyla ayrıştırın.
  • Save MapiMessage as EML: MapiMessage‘i MIME formatına message.SaveToEml() veya message.SaveToEml(stream) ile serileştirin.
  • Round-trip fidelity: Konu, gövde, HTML gövde, gönderici, alıcılar ve ekler, EML → MSG → EML dönüşümlerinde tamamen korunur.
  • Harici MIME ayrıştırıcı yok: EML ayrıştırması kütüphane içinde yerel olarak uygulanır — System.Net.Mail bağımlılığı gerekmez.

EML Dönüştürme Nerede Kullanılır

  • Biçim köprüsü: E-posta sunucularından EML olarak e-postaları alın ve Outlook uyumlu depolama için MSG’ye dönüştürün.
  • Standart uyumluluğu: Özel MSG dosyalarını herhangi bir posta taşıyıcısına teslimat için standart MIME’ye dönüştürün.
  • Arşiv normalleştirme: Karışık bir .eml ve .msg dosyalarından oluşan arşivi tek bir formata normalleştirin.
  • Test iş akışları: Testlerde .eml fixture’larını oluşturun ve bunların MSG dönüşümünde veri kaybı olmadan hayatta kalıp kalmadığını doğrulayın.

Bir MSG Dosyasından Konuyu Oku

Bir akıştan Outlook MSG dosyasını açın ve konuyu yazdırın — Microsoft Outlook gerekmez.

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

Bir MSG Mesajı Oluştur ve Kaydet

Gönderen, alıcı ve ek içeren tam bir e-posta oluşturun, ardından bir MSG dosyasına yazın.

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’yi MSG’ye Dönüştür

Yerleşik MIME ayrıştırıcısını kullanarak standart bir .eml dosyasını yükleyin ve Outlook .msg dosyası olarak kaydedin.

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);
  

Destek ve Öğrenme Kaynakları

 Türkçe