Outlook 파일 만들기 및 저장

Aspose.Email은 Outlook 메시지(MSG) 파일 생성을 지원합니다. 이 문서에서는 다음 방법을 설명합니다:

Outlook 메시지 만들기 및 저장

다음은 MailMessage 클래스에는 Save() 디스크 또는 스트림에 Outlook MSG 파일을 저장할 수 있는 메서드. 아래 코드 조각은 다음 클래스의 인스턴스를 생성합니다. MailMessage 클래스이며, from, to, subject 및 body와 같은 속성을 설정합니다. 해당 Save() 메서드는 파일 이름을 인수로 받습니다. 또한 Outlook 메시지는 다음과 함께 생성될 수 있습니다. 압축된 RTF 본문 다음 사용 MapiConversionOptions

  1. 새 인스턴스를 생성합니다 MailMessage 클래스이며 From, To, Subject 및 Body 속성을 설정합니다.
  2. 다음을 호출합니다. MapiMessage 클래스 FromMailMessage 객체를 받아들이는 메서드 MailMessage 형식. 해당 FromMailMessage 메서드는 변환합니다 MailMessage 으로 MapiMessage (MSG).
  3. 다음을 호출합니다. MapiMessage.Save() MSG 파일을 저장하는 메서드.

Windows 애플리케이션의 버튼 컨트롤 클릭 이벤트에 다음 코드를 작성하십시오.

첨부 파일이 있는 MSG 파일 만들기

위 예제에서, 우리는 간단한 MSG 파일을 만들었습니다. Aspose.Email은 첨부 파일이 포함된 메시지 파일 저장도 지원합니다. 필요한 것은 첨부 파일을 다음에 추가하는 것입니다. MailMessage 인스턴스. Add() 메서드를 호출하여 첨부 파일을 추가합니다. MailMessage.Attachments 컬렉션에 추가됩니다. 위에 만든 폼에 리스트박스를 추가하고 첨부 파일 추가 및 제거를 위한 두 개의 버튼을 추가하십시오. 애플리케이션은 다음과 같이 작동합니다:

  1. Add Attachment 버튼을 클릭하면 Open File Dialog가 표시되어 사용자가 첨부 파일을 찾아 선택할 수 있습니다.
  2. 파일이 선택되면 전체 경로가 목록에 추가됩니다.
  3. MSG 파일이 생성될 때, 첨부 파일 경로가 리스트에서 가져와서 MailMessage.Attachments 컬렉션.

Add Attachment 버튼 클릭 이벤트에 다음 코드를 작성하십시오.

Remove Attachment 버튼을 클릭하면 리스트박스에서 선택된 항목을 제거합니다. Remove Attachment 버튼 클릭 이벤트에 다음 코드를 작성하십시오.

첨부 파일을 추가하는 코드를 MailMessage 인스턴스. Write Msg 함수에 대한 최종 코드는 아래와 같습니다.

RTF 본문이 있는 MSG 파일 생성

Aspose.Email을 사용하면 서식이 풍부한 텍스트(RTF) 본문을 가진 Outlook 메시지(MSG) 파일도 만들 수 있습니다. RTF 본문은 텍스트 서식을 지원합니다. 이를 만들려면 다음을 설정하십시오. MailMessage.HtmlBody 속성. 변환할 때 MailMessage 인스턴스를 MapiMessage 인스턴스에서는 HTML 본문이 RTF로 변환됩니다. 이렇게 하면 이메일 본문의 서식이 보존됩니다.

다음 예제는 RTF 본문을 가진 MSG 파일을 생성합니다. HTML 본문에 하나의 헤딩과 굵게, 밑줄 서식이 적용되어 있습니다. 이 서식은 HTML이 RTF로 변환될 때 유지됩니다.

MAPI 메시지 본문에 대한 RTF 압축

NOTE: 압축 과정은 메시지를 생성할 때 성능을 저하시킬 수 있습니다. 이 사실을 이해하고 파일 크기와 성능 사이의 균형을 고려하여 압축 플래그를 특정 요구 사항에 맞게 구성함으로써, 개발자는 이메일 메시지를 다룰 때 MSG 및 PST 파일 생성을 효과적으로 관리할 수 있습니다.

RTF 압축은 메시지 크기와 Microsoft Outlook이 이메일 메시지 및 기타 데이터를 저장하는 데 사용하는 PST(개인 저장소 테이블) 파일의 크기를 줄이기 위해 설계되었습니다. 메시지 본문을 구성할 때 RTF 압축을 사용하면 개발자는 이메일 메시지를 저장하는 데 필요한 메모리를 줄이거나 메시지를 전송할 때 네트워크 대역폭을 최적화할 수 있습니다.

이를 위해 두 개의 오버로드된 메서드가 설계되었습니다:

  • MapiMessageItemBase.SetBodyContent(string content, BodyContentType contentType, bool compression): 이 메서드는 지정된 문자열 content와 body contentType(예: 일반 텍스트, HTML 등)을 사용하여 메시지 본문 내용을 설정합니다. 선택적 compression 매개변수는 RTF 압축을 사용하여 내용을 압축할지 여부를 지정하는 값입니다. compression이 true이면 내용이 압축되어 메시지 크기가 작아집니다.

  • MapiMessageItemBase.SetBodyRtf(string content, bool compression): 이 메서드는 메시지 본문을 RTF 형식으로 설정합니다. content 매개변수는 메시지 본문으로 설정될 RTF 내용을 나타내는 문자열입니다. 이전 메서드와 마찬가지로 compression 매개변수는 RTF 압축을 적용할지 여부를 결정합니다. compression이 true이면 RTF 내용이 압축되어 크기가 줄어듭니다.

다음 코드 샘플은 HTML 본문을 설정하고 압축된 상태로 유지하는 방법을 보여줍니다:

var msg = new MapiMessage("from@doamin.com", "to@domain.com", "subject", "body");
// set the html body and keep it compressed
// this will reduce the message size
msg.SetBodyContent(htmlBody, BodyContentType.Html, true);

또한 MapiConversionOptions.UseBodyCompression 속성. 이 속성을 활성화하면 MailMessage를 MapiMessage로 변환할 때 RTF 본문 압축이 적용되어 MSG 파일 크기가 감소합니다. 아래 코드 샘플에 표시되어 있습니다:

var message = MailMessage.Load(fileName);
var options = new MapiConversionOptions();
options.UseBodyCompression = true;
var msg = MapiMessage.FromMailMessage(message, options);

초안 상태로 메시지 저장

이메일은 작성 중이지만 나중에 계속 작업하려는 경우 초안으로 저장됩니다. Aspose.Email은 메시지 플래그를 설정하여 이메일 메시지를 초안 상태로 저장하는 것을 지원합니다. 아래는 Outlook 이메일 메시지(MSG)를 초안으로 저장하는 샘플 코드입니다.