Verarbeitung von TNEF‑Anhängen in E‑Mail‑Nachrichten
E‑Mail‑Nachrichten mit TNEF‑Anhängen
Transport Neutral Encapsulation Format (TNEF) ist ein proprietäres E‑Mail‑Anhangsformat, das von Microsoft Outlook und Microsoft Exchange Server verwendet wird. Die Aspose.Email‑API ermöglicht das Lesen von E‑Mail‑Nachrichten, die TNEF‑Anhänge enthalten, und das Ändern ihres Inhalts. Die E‑Mail kann dann als normale Nachricht oder im selben Format gespeichert werden, wobei diese Anhänge erhalten bleiben. Dieser Artikel zeigt verschiedene Codebeispiele für die Arbeit mit Nachrichten, die TNEF‑Anhänge enthalten. Er demonstriert außerdem, wie TNEF‑EML‑Dateien aus Outlook‑MSG‑Dateien erstellt werden.
Identifizieren von TNEF‑Anhängen in einer E‑Mail
Das folgende Code‑Snippet zeigt, wie Sie erkennen, ob eine E‑Mail TNEF‑Anhänge enthält:
from aspose.email import MailMessage
mail = MailMessage.load(data_dir + "message.eml")
is_tnef = mail.original_is_tnef
Lesen von E‑Mails unter Beibehaltung von TNEF‑Anhängen
Das folgende Code‑Snippet zeigt, wie Sie eine Nachricht lesen und TNEF‑Anhänge beibehalten.
from aspose.email import MailMessage, SaveOptions, EmlLoadOptions, MessageFormat, FileCompatibilityMode
options = EmlLoadOptions()
# This will Preserve the TNEF attachment as it is, file contains the TNEF attachment
options.preserve_tnef_attachments = True
eml = MailMessage.load(data_dir + "message.eml", options)
for attachment in eml.attachments:
print(attachment.name)
Konvertieren von MSG nach TNEF
Outlook‑MSG‑Dateien enthalten manchmal Informationen wie Tabellen und Textstile, die bei einer Konvertierung nach EML beschädigt werden können. Das Erstellen von TNEF‑Nachrichten aus solchen MSG‑Dateien ermöglicht das Beibehalten der Formatierung und sogar das Versenden solcher Nachrichten über E‑Mail‑Clients, wobei die Formatierung erhalten bleibt. Die convert_as_tnef Eigenschaft wird dafür verwendet. Das folgende Code‑Snippet zeigt, wie Sie aus einer MSG‑Datei eine TNEF‑E‑Mail erstellen.
from aspose.email.mapi import MapiMessage, MailConversionOptions, OutlookMessageFormat
mapi_msg = MapiMessage.from_file(data_dir + "message.msg")
mail_conversion_options = MailConversionOptions()
mail_conversion_options.convert_as_tnef = True
message = mapi_msg.to_mail_message(mail_conversion_options)
Erstellen einer TNEF‑E‑Mail
Der folgende Beispielcode kann verwendet werden, um eine E‑Mail im TNEF‑Format zu erstellen:
- Konfigurieren Sie Dateioptionen mit Hilfe der MsgLoadOptions Klasse.
- Stellen Sie sicher, dass TNEF‑Anhänge in der E‑Mail beim Laden der Datei erhalten bleiben, indem Sie setzen options.preserve_tnef_attachments auf True.
- Verwenden Sie die MailMessage.load(eml_file_name, options) Methode zum Laden der Eingabe‑E‑Mail‑Datei unter Anwendung der zuvor konfigurierten Optionen. Dies stellt sicher, dass die geladene E‑Mail TNEF‑bezogene Informationen (wie Anhänge oder proprietäre Microsoft‑Outlook‑Formate) beibehält.
from aspose.email import MailMessage, SaveOptions, MsgLoadOptions, MessageFormat, FileCompatibilityMode
options = MsgLoadOptions()
# The PreserveTnefAttachments option with MessageFormat.Msg will create the TNEF eml.
options.preserve_tnef_attachments = True
eml = MailMessage.load(eml_file_name, options)
Erkennen von TNEF‑Nachrichten
Das folgende Code‑Snippet zeigt, wie Sie erkennen, ob eine Nachricht TNEF ist. Die original_is_tnef Eigenschaft des MailMessage Objekt wird geprüft, um zu ermitteln, ob die E‑Mail ursprünglich im TNEF‑Format (Transport Neutral Encapsulation Format) vorlag. Wenn is_tnef ergibt True, bedeutet dies, dass die E‑Mail TNEF‑Kodierung enthält, was typischerweise bei E‑Mails aus Microsoft Outlook oder Exchange vorkommt.
from aspose.email import MailMessage
mail = MailMessage.load(data_dir + "message.eml")
is_tnef = mail.original_is_tnef