이메일 메시지에서 TNEF 첨부 파일 처리
**TNEF(Transport Neutral Encapsulation Format)**는 Microsoft Outlook이 풍부한 콘텐츠를 첨부 파일에 캡슐화하기 위해 사용하는 독점 형식으로, 일반적으로 winmail.dat으로 저장됩니다. Aspose.Email API를 사용하면 TNEF 첨부 파일이 포함된 이메일 메시지를 읽고 첨부 파일의 내용을 수정할 수 있습니다. 그런 다음 이메일을 일반 이메일이나 동일한 형식으로 저장하여 TNEF 첨부 파일을 보존할 수 있습니다. 이 문서에서는 TNEF 첨부 파일이 포함된 메시지를 다루는 다양한 코드 샘플을 보여줍니다. 또한 Outlook MSG 파일에서 TNEF EML 파일을 만드는 방법도 설명합니다.
TNEF 첨부가 있는 메시지 읽기
다음 코드 스니펫은 TNEF 첨부 파일을 보존하면서 메시지를 읽는 방법을 보여줍니다.
TNEF 첨부 없이 메시지 읽기
다음 코드 스니펫은 TNEF 첨부 파일을 보존하지 않고 메시지를 읽는 방법을 보여줍니다.
TNEF 첨부 파일 로드 및 저장
Aspose.Email for .NET을 사용하면 TNEF 첨부 파일을 직접 MapiAttachment 파일 경로나 스트림을 사용하여 객체를 만들고, 객체를 TNEF 형식으로 저장합니다. 이를 통해 winmail.dat 파일을 생성하거나 이메일 워크플로에서 Outlook 전용 형식을 보존할 수 있습니다.
API는 다음 멤버를 제공합니다. MapiAttachment 클래스:
TNEF 첨부 파일 로드
-
static MapiAttachment LoadFromTnef(string fileName) - .dat 파일에서 TNEF 첨부 파일을 로드합니다.
-
static MapiAttachment LoadFromTnef(Stream stream) - 스트림(예: MemoryStream 또는 파일 스트림)에서 TNEF 첨부 파일을 로드합니다.
TNEF 첨부 파일 저장
-
void SaveToTnef(string filename) - MapiAttachment를 TNEF 파일에 저장합니다.
-
void SaveToTnef(Stream stream) - MapiAttachment를 TNEF 형식의 스트림에 저장합니다.
아래 코드 샘플은 이메일 메시지에서 winmail.dat 첨부 파일을 추출하고 보존한 뒤, 다시 메시지에 첨부 파일로 추가하는 방법을 보여줍니다:
// message.eml contains a winmail.dat attachment, but by default, the attachment is not preserved.
var msg = MapiMessage.Load("message.eml");
var ms = new MemoryStream();
msg.Attachments[0].SaveToTnef("winmail.dat");
ms.Position = 0;
var fromtnefAttachment = MapiAttachment.LoadFromTnef(ms);
msg.Attachments.Add(fromtnefAttachment);
fromtnefAttachment = MapiAttachment.LoadFromTnef("winmail.dat");
msg.Attachments.Add(fromtnefAttachment);
TNEF 첨부 파일의 리소스 업데이트
다음 코드 스니펫은 TNEF 첨부 파일의 리소스를 업데이트하고 TNEF 형식을 보존하는 방법을 보여줍니다.
TNEF 메시지에 첨부 파일 추가
다음 코드 스니펫은 TNEF를 포함하는 기본 메시지에 새 첨부 파일을 추가하는 방법을 보여줍니다.
MSG에서 TNEF EML 만들기
Outlook MSG에는 표 및 텍스트 스타일과 같은 정보가 포함되어 있을 수 있으며, 이를 EML로 변환하면 형식이 깨질 수 있습니다. 이러한 MSG 파일에서 TNEF 메시지를 만들면 형식을 유지하고 이메일 클라이언트를 통해 형식을 보존한 상태로 전송할 수 있습니다. 그 MailConversionOptions.ConvertAsTnef 이 작업을 수행하려면 이 속성을 사용합니다. 다음 코드 스니펫은 MSG에서 TNEF EML을 생성하는 방법을 보여줍니다.
TNEF를 생성하기 위해 다음 샘플 코드를 사용할 수 있습니다.
TNEF 형식 메시지 식별
다음 코드 스니펫은 메시지가 TNEF인지 감지하는 방법을 보여줍니다.
TNEF 형식 첨부 파일 식별
다음은 Attachment.IsTnef 속성을 사용하면 메시지 첨부 파일이 TNEF 형식인지 감지할 수 있습니다.
var eml = MailMessage.Load(fileName);
foreach (attachment in eml.Attachments)
{
Console.WriteLine($"Is Attachment TNEF?: {attachment.IsTnef}");
}