FAQ — Aspose.Email FOSS pro .NET
Licencování
Jakou licenci používá Aspose.Email.Foss?
Licence MIT. Klíč licence není vyžadován. Používejte volně v osobních, komerčních a open-source projektech.
Instalace
Jak nainstaluji Aspose.Email.Foss?
dotnet add package Aspose.Email.FossJaká verze .NET je vyžadována?
.NET 8.0 nebo novější. Knihovna nepodporuje .NET Framework ani .NET Standard.
Existují nativní závislosti?
Ne. Knihovna je čistě spravovaná C# bez nativních závislostí. Běží identicky na Windows, Linux, macOS, Docker a v serverless prostředích.
Podpora formátů
Jaké formáty e‑mailu jsou podporovány?
| Formát | Číst | Zapisovat |
|---|---|---|
| MSG (Outlook) | ✓ | ✓ |
| CFB (Compound File Binary) | ✓ | ✓ |
| EML (MIME / RFC 5322) | ✓ | ✓ |
Mohu číst soubory EML?
Ano. Použijte MapiMessage.LoadFromEml(stream) k načtení standardního .eml souboru do
MapiMessage. Vestavěný MIME parser zpracovává složené hlavičky, base64 obsah a
multipart zprávy.
Mohu převést MSG na EML?
Ano. Zavolejte message.SaveToEml() pro výstup byte[] v paměti, nebo
message.SaveToEml(stream) pro zápis do souboru. Předmět, tělo, HTML tělo, odesílatel,
příjemci a všechny přílohy jsou zachovány.
Je TNEF (winmail.dat) podporováno?
Ne. Podporovány jsou pouze standardní formáty MSG (CFB) a EML (MIME).
Je podporováno IMAP/SMTP/POP3?
Ne. Knihovna zpracovává soubory MSG přímo a neobsahuje žádnou síťovou/protokolovou vrstvu.
Použití API
Jak načíst soubor MSG?
using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("message.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);Jak vytvořit novou zprávu?
var message = MapiMessage.Create("Subject", "Body");
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");
message.Save("output.msg");Jak přidat přílohy?
// From byte array
message.AddAttachment("file.pdf", pdfBytes, "application/pdf");
// From stream
using var stream = File.OpenRead("photo.png");
message.AddAttachment("photo.png", stream, "image/png");Jak převést EML na MSG?
using var eml = File.OpenRead("message.eml");
var message = MapiMessage.LoadFromEml(eml);
message.Save("message.msg");Jak získám přístup k surové struktuře CFB?
using Aspose.Email.Foss.Cfb;
using var reader = CfbReader.FromFile("message.msg");
foreach (var entry in reader.IterChildren(CfbConstants.RootStreamId))
Console.WriteLine(entry.Name);Známá omezení
Existují nějaké neimplementované metody?
V aktuální verzi neexistují žádné úmyslně neimplementované stuby.
Je k dispozici podpora kalendáře/termínů?
Knihovna zpracovává soubory MSG obecně. Vlastnosti specifické pro kalendář lze získat pomocí SetProperty() / GetPropertyValue() s ID vlastností MAPI z CommonMessagePropertyId, ale neexistuje dedikované API pro kalendář nebo schůzky.
Je zaručena bezpečnost vláken?
Každá instance MapiMessage a CfbReader je nezávislá. Současný přístup k samostatným instancím z různých vláken je bezpečný. Nesdílejte jednu instanci mezi vlákny bez externí synchronizace.