1

지금 Exchange Server에서 Exchange 웹 서비스 API를 사용하여 Exchange의 특정 전자 메일을 끌어와 EML 파일로 저장합니다. 이것은 훌륭하게 작동합니다. 그러나 사용자/고객은 전자 메일이 msg 형식이어야합니다.Outlook (COM 개체 등) 또는 타사 소프트웨어를 사용하지 않고 MSG 파일로 전자 메일 저장

이 어떤 있습니까이 일을 내가 본 두 가지 방법이 있습니다 다른 대안? 가능한 경우 PowerShell을 사용하고 싶습니다만 EWS가 EML 파일 작성으로 제한 될 수 있습니다.

MSG와 EML 요구 사항 (준수)에 유연성이 없습니다.

편집 : 이것은 서버에서 실행됩니다. Outlook을 설치하지 않고이 작업을 수행 할 수 있다면 더 좋을 것입니다.

답변

0

원하는 경우 OOM (Outlook Object Model)과 함께 PowerShell을 계속 사용할 수 있습니다.

OOM보다 많은 기능을 가진 Redemption을 사용할 수도 있습니다 (서비스에서 실행되거나 Outlook 보안 프롬프트가 실행되지 않을 수도 있음).

+0

Outlook을 설치하지 않고이 작업을 수행하는 것이 좋습니다. msg 파일이 아웃룩과 관련되어 있다는 것을 고려할 때 나는 그것이 터무니없는 것처럼 들리는 것을 안다. – EGr

+0

독립 실행 형 버전의 MAPI가 설치된 경우 (Unicode MSG 파일을 지원하지 않음) Outlook을 사용하지 않고도 사용 가능합니다. –

0

코드에 명시 적으로 MSG 파일을 만들 수 있습니다 (OLE 저장소 (IStorage) 파일이며 형식은 documented입니다) - EML 파일을 구문 분석 한 다음 MSG 파일에서 다양한 MAPI 속성을 채 웁니다.

Redemption을 사용할 수도 있습니다. EML 파일을 MSG로 변환하는 것은 쉽습니다.

RDOSession Session = new RDOSession(); 
    RDOMail Msg = Session.CreateMessageFromMsgFile(@"c:\temp\YourMsgFile.msg"); 
    Msg.Import(@"c:\temp\YourEmlFile.eml", rdoSaveAsType.olRFC822); 
    Msg.Save(); 
+0

MSG 파일에 대한 문서를 살펴 보겠습니다. Redemption은 제 3 자 소프트웨어이므로 실제로 사용할 수 없습니다. – EGr

+0

Powershell에서 이진 파일을 처리하고 싶지 않습니다 ... 다른 프로그래밍 언어를 사용하고 있습니까? –

+0

언어에 따라 다릅니다. 아마도 파이썬 같은 것을 사용할 수 있습니다. – EGr

관련 문제