MAPI 속성 작업
Contents
[
Hide
]
Outlook MAPI 속성 접근 및 설정
MapiProperty 클래스는 다음과 같은 내용을 포함하는 MAPI 속성을 나타냅니다:
- Name: 속성 이름을 나타내는 문자열.
- Tag: 속성 태그를 나타내는 긴 정수 값입니다.
- Data: 속성 데이터를 나타내는 바이트 배열.
MAPI 속성 태그를 사용하여 MAPI 속성 가져오기
MAPI 속성을 가져오려면:
- 파일이나 스트림에서 로드하여 MapiMessage 인스턴스를 생성합니다.
- MapiPropertyTag 키를 통해 MapiMessage.Properties에서 MapiProperty를 가져옵니다.
- GetX 메서드를 사용하여 MapiProperty의 데이터를 가져옵니다.
다음 코드 스니펫은 MAPI 속성 태그를 사용하여 MAPI 속성을 가져오는 방법을 보여줍니다.
MAPI 속성 설정
다음 코드 스니펫은 MAPI 속성을 설정하는 방법을 보여줍니다.
convertDateTime 메서드 정의는 다음과 같습니다:
Outlook MSG 파일에서 명명된 MAPI 속성 읽기
Aspose.Email은 명명된 MAPI 속성 추출을 포함한 MSG 파일 작업을 위한 다양한 API를 제공합니다.
MSG 파일에서 명명된 MAPI 속성 읽기
명명된 MAPI 속성을 읽기 위해서는 named_properties 속성을 사용할 수 있습니다. MapiMessage 클래스. 다음 코드 샘플은 메시지를 로드하고, 모든 명명된 MAPI 속성을 검색한 뒤, 각 속성을 반복하여 값을 확인하는 방법을 보여줍니다.
import aspose.email as ae
msg = ae.mapi.MapiMessage.load("my.msg")
# Get all named MAPI properties
properties = msg.named_properties.values
# Read all properties in foreach loop
for prop in properties:
# Read any specific property
if prop.descriptor.canonical_name == "PidLidSideEffects":
print(f"{prop.descriptor.canonical_name} = {prop}")
if prop.descriptor.canonical_name == "PidLidInternetAccountName":
print(f"{prop.descriptor.canonical_name} = {prop}")
첨부 파일에서 명명된 MAPI 속성 읽기
Aspose.Email은 첨부 파일의 모든 명명된 MAPI 속성을 검색할 수 있게 합니다. 다음 코드 샘플은 첨부 파일에서 명명된 MAPI 속성을 읽는 방법을 보여줍니다:
import aspose.email as ae
msg = ae.mapi.MapiMessage.load("my.msg")
# Get all named MAPI properties
attach_properties = msg.attachments[0].named_properties.values
# Read all properties in foreach loop
for prop in attach_properties:
# Read any specific property
if prop.descriptor.name == "AttachmentOriginalUrl":
print(f"{prop.descriptor.name} = {prop.get_string()}")
if prop.descriptor.name == "AttachmentWasSavedToCloud":
print(f"{prop.descriptor.name} = {prop.get_boolean()}")
MSG 및 첨부 파일에서 속성 제거
이 코드 샘플은 본문 내용과 첨부된 메시지 파일이 포함된 Outlook MSG 메시지를 생성하는 방법을 보여줍니다. 또한 생성된 메시지에서 첨부 파일 속성을 삭제하는 방법도 보여줍니다.
import aspose.email as ae
# create an MSG
msg = ae.mapi.MapiMessage("from@doamin.com", "to@domain.com", "subject", "body");
msg.set_body_content("<html><body><h1>This is the body content</h1></body></html>", ae.mapi.BodyContentType.HTML)
# load message and add it to created MSG as attachment
attachment = ae.mapi.MapiMessage.load(attach.msg")
msg.attachments.add("Outlook2 Test subject.msg", attachment)
# count of attachment properties before removal
print(f"Before removal = {msg.attachments[0].properties.count}")
# Delete anyone attachment property
msg.attachments[0].remove_property(923467779)
# count of attachment properties after removal
print(f"Before removal = {msg.attachments[0].properties.count}")