Outlook에서 현재 전자 메일을 저장하려고합니다. 코드는 리본 버튼으로 액세스됩니다. MailItem에서 SaveAs 메서드를 수행하면 항상 0x80004004 (E_ABORT) 예외가 발생합니다. Outlook.MailItem.SaveAs 메서드는 항상 0x80004004 (E_ABORT)와 함께 실패합니다.
이
내 코드입니다 : 나는 동일한 파일 이름과 같은 위치에서 Outlook에서 수동으로 저장하면 Outlook._Application outlook = new Outlook.Application();
if (outlook.ActiveExplorer().Selection.Count > 0)
{
Object selectedObject = outlook.ActiveExplorer().Selection[1];
if (selectedObject is Outlook.MailItem)
{
Outlook._MailItem mailItem = (selectedObject as Outlook._MailItem);
Helpers.CheckDir(userAppPath + @"temp");
try
{
mailItem.SaveAs(userAppPath + @"temp\tempmail.msg", Outlook.OlSaveAsType.olMSGUnicode);
doUpload = true;
}
catch (Exception ex)
{
doUpload = false;
}
}
}
내가 내 코드에서 다시로드 할 수 있습니다,하지만 난 할 수 없습니다 SaveAs 메서드를 사용하여 동일한 전자 메일을 코드에 저장합니다.
다양한 OlSaveAsType 유형을 시도했습니다. 또한 MailItem 형식 대신 _MailItem 형식이 필요합니다.
아이디어가 있으십니까?
mailitem 속성을 읽을 수 있습니까? –
예. 나는 많은 사람들에게 접근한다. –
SaveAs 메서드에서 Outlook.OlSaveAsType.olMSG를 사용해 보셨습니까? –