2013-12-15 1 views
0

을 사용하여 이메일 개체에 : 나는 메일을 저장하고 ReceivedTime 필드할당 ReceivedTime 나는 이메일이 방법으로 객체를 생성 구속

mail.Save(); 
RDOMail rdoMail = Globals.ThisAddIn.session.GetMessageFromID(mail.EntryID); 
rdoMail.ReceivedTime = DateTime.Parse("01/01/2013"); 
rdoMail.Save(); 

그리고에게 할당 구속을 사용하여로드 지금

Outlook.MailItem mail = folder.Items.Add(Outlook.OlItemType.olMailItem); 
mail.To = "[email protected]"; 
mail.Subject = "subject"; 
mail.Body = "body"; 

을, 이메일을 다시 저장하십시오. exporr을 볼 때 ReceivedTime 필드가 설정되지 않았습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

- UPDATE는 -

이전 루틴이 작동하는 것 같다,하지만 난 이전 코드 후이 라인을 가지고 :

for (int i = 0; i < mails.Length; i++) 
    mails[i].Move(folder); 

는 그 다음 ReceivedTime의 할당이 삭제됩니다합니다. 이 테스트를 거쳤으며 전자 메일 개체를 다른 폴더로 이동하면 보너스 수정 내용이 지워집니다. 이제, 새로운 질문은 : 어떻게 이것을 피할 수 있습니까? 전자 메일을 속한 폴더로 이동해야하지만 수정 내용이 지워지고 ReceivedTime 필드의 할당은 전자 메일의 이동 후에 수행 할 수 없습니다.

답변

0

ReceivedTime은 PR_MESSAGE_DELIVERY_TIME MAPI 속성에 해당합니다. OutlookSpy에서 변경된 것으로 보입니까 (IMessage 버튼 클릭)?

메시지보기에 보내거나받은 시간이 표시됩니까?

+0

질문을 새로운 정보로 업데이트했습니다. 새 정보에 대한 의견을 보내주십시오. –

+0

Outlook 대신 Redemption을 사용하여 해당 폴더로 메시지를 이동하거나 메시지를 이동 한 후에 ReceivedTime 속성을 설정할 수 있습니다 (Move()는 새로 만든 메시지를 반환합니다). –