Preguntas frecuentes — Aspose.Email FOSS para .NET

Preguntas frecuentes — Aspose.Email FOSS para .NET

Licencias

¿Qué licencia usa Aspose.Email.Foss?

Licencia MIT. No se requiere clave de licencia. Úselo libremente en proyectos personales, comerciales y de código abierto.


Instalación

¿Cómo instalo Aspose.Email.Foss?

dotnet add package Aspose.Email.Foss

¿Qué versión de .NET se requiere?

.NET 8.0 o posterior. La biblioteca no es compatible con .NET Framework ni .NET Standard.

¿Hay dependencias nativas?

No. La biblioteca es C# puro administrado sin dependencias nativas. Se ejecuta idénticamente en Windows, Linux, macOS, Docker y entornos sin servidor.


Compatibilidad de formatos

¿Qué formatos de correo electrónico son compatibles?

FormatoLeerEscribir
MSG (Outlook)
CFB (Compound File Binary)
EML (MIME / RFC 5322)

¿Puedo leer archivos EML?

Sí. Use MapiMessage.LoadFromEml(stream) para cargar un archivo .eml estándar en un
MapiMessage. El analizador MIME incorporado maneja encabezados plegados, contenido base64 y
mensajes multipartes.

¿Puedo convertir MSG a EML?

Sí. Llame a message.SaveToEml() para salida byte[] en memoria, o message.SaveToEml(stream) para escribir en un archivo. Asunto, cuerpo, cuerpo HTML, remitente, destinatarios y todos los archivos adjuntos se conservan.

¿Se admite TNEF (winmail.dat)?

No. Sólo se admiten los formatos estándar MSG (CFB) y EML (MIME).

¿Se admite IMAP/SMTP/POP3?

No. La biblioteca maneja archivos MSG directamente y no incluye ninguna capa de red/protocolo.


Uso de API

¿Cómo cargo un archivo MSG?

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

¿Cómo creo un nuevo mensaje?

var message = MapiMessage.Create("Subject", "Body");
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");
message.Save("output.msg");

¿Cómo añado archivos adjuntos?

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

¿Cómo convierto EML a MSG?

using var eml = File.OpenRead("message.eml");
var message = MapiMessage.LoadFromEml(eml);
message.Save("message.msg");

¿Cómo accedo a la estructura CFB sin procesar?

using Aspose.Email.Foss.Cfb;
using var reader = CfbReader.FromFile("message.msg");
foreach (var entry in reader.IterChildren(CfbConstants.RootStreamId))
    Console.WriteLine(entry.Name);

Limitaciones conocidas

¿Hay algún método sin implementar?

No existen stubs intencionalmente no implementados en la versión actual.

¿Está disponible el soporte de calendario/cita?

La biblioteca maneja archivos MSG de forma genérica. Las propiedades específicas del calendario pueden accederse a través de SetProperty() / GetPropertyValue() con IDs de propiedad MAPI de CommonMessagePropertyId, pero no hay una API dedicada al calendario o a citas.

¿Se garantiza la seguridad en hilos?

Cada instancia de MapiMessage y CfbReader es independiente. El acceso concurrente a instancias separadas desde hilos diferentes es seguro. No comparta una única instancia entre hilos sin sincronización externa.

 Español