PMF — Aspose.Email FOSS per a .NET
Llicència
Quina llicència utilitza Aspose.Email.Foss?
Llicència MIT. No es requereix cap clau de llicència. Utilitzeu-la lliurement en projectes personals, comercials i de codi obert.
Instal·lació
Com instal·lo Aspose.Email.Foss?
dotnet add package Aspose.Email.FossQuina versió de .NET es requereix?
.NET 8.0 o posterior. La biblioteca no admet .NET Framework ni .NET Standard.
Hi ha dependències natives?
No. La biblioteca és purament gestionada en C# sense dependències natives. S’executa de manera idèntica a Windows, Linux, macOS, Docker i entorns sense servidor.
Suport de format
Quins formats de correu electrònic són compatibles?
| Format | Llegir | Escriure |
|---|---|---|
| MSG (Outlook) | ✓ | ✓ |
| CFB (Compound File Binary) | ✓ | ✓ |
| EML (MIME / RFC 5322) | ✓ | ✓ |
Puc llegir fitxers EML?
Sí. Utilitzeu MapiMessage.LoadFromEml(stream) per carregar un fitxer .eml estàndard en un
MapiMessage. L’analitzador MIME integrat gestiona les capçaleres plegades, el contingut base64 i
els missatges multipart.
Puc convertir MSG a EML?
Sí. Crida message.SaveToEml() per a una sortida byte[] en memòria, o
message.SaveToEml(stream) per escriure a un fitxer. Assumpte, cos, cos HTML, remitent,
destinataris i tots els fitxers adjunts es conserven.
Es suporta TNEF (winmail.dat)?
No. Només es donen suport els formats estàndard MSG (CFB) i EML (MIME).
És compatible amb IMAP/SMTP/POP3?
No. La biblioteca gestiona fitxers MSG directament i no inclou cap capa de xarxa/protocol.
Ús de l’API
Com puc carregar un fitxer MSG?
using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("message.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);Com creo un missatge nou?
var message = MapiMessage.Create("Subject", "Body");
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");
message.Save("output.msg");Com afegeixo fitxers adjunts?
// 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");Com puc convertir EML a MSG?
using var eml = File.OpenRead("message.eml");
var message = MapiMessage.LoadFromEml(eml);
message.Save("message.msg");Com accedeixo a l’estructura CFB en brut?
using Aspose.Email.Foss.Cfb;
using var reader = CfbReader.FromFile("message.msg");
foreach (var entry in reader.IterChildren(CfbConstants.RootStreamId))
Console.WriteLine(entry.Name);Limitacions conegudes
Hi ha algun mètode no implementat?
No hi ha stubs no implementats intencionadament a la versió actual.
Està disponible el suport per a calendaris/cites?
La biblioteca gestiona fitxers MSG de manera genèrica. Les propietats específiques del calendari es poden accedir via SetProperty() / GetPropertyValue() amb IDs de propietat MAPI de CommonMessagePropertyId, però no hi ha cap API dedicada al calendari o a les cites.
Es garanteix la seguretat de fils?
Cada instància MapiMessage i CfbReader és independent. L’accés concurrent a instàncies separades
des de fils separats és segur. No compartiu una única instància entre fils
sense sincronització externa.