2012-01-18 4 views
1

Outlook을 사용하여 첨부 파일이있는 메시지를 보내는 프로그램이 있습니다. 첨부 파일이있는 이메일을 보내고 있지만 보낼 편지함에는 메시지에 첨부 파일이 없습니다. 누군가가 메시지를 받으면 첨부 파일은 보이지만 보낼 편지함에는 없습니다. 내가 사용하는이 전C# Outlook으로 전자 메일 보내기 - 보낼 편지함에 첨부 파일이 없습니다.

 Outlook.MailItem mail = (Outlook.MailItem)outlookApp.CreateItem(Outlook.OlItemType.olMailItem); 
     mail.BodyFormat = Outlook.OlBodyFormat.olFormatPlain; 
     int iAttachType = (int)Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue; 
     mail.Attachments.Add(Application.StartupPath+"/"+attachment, iAttachType, null, attachment); 
     mail.To = email; 
     mail.Subject = "Something"; 
     mail.Body = "Some body"; 
     mail.Send(); 

:

private Outlook.Application outlookApp; 
    private Outlook._NameSpace outlookNameSpace; 
    private Outlook.MAPIFolder outbox; 

  outlookApp = new Outlook.Application(); 
      outlookNameSpace = outlookApp.GetNamespace("MAPI"); 
      outlookNameSpace.Logon(null, null, false, false); 
      outbox = outlookNameSpace.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderOutbox); 

내 전망이 프로그램은 마이크로 소프트 교환 Serwer와 연결되어 는 여기에 몇 가지 코드입니다. C++로 작성된 응용 프로그램을 사용할 때 보낼 편지함의 메시지에 첨부 파일을 저장했습니다.

도움을 청하십시오!

답변

0

Outlook 항목의 이전 버전으로 작업 할 수 있습니다.

메일 항목, 레코드 패턴, 관리자 및 [지금 잊어 버렸습니다] 유형이 필요 이상으로 오래 유지되는 경우 이러한 현상이 발생할 수 있습니다.

참조가 종종 이전 버전의 항목을 가리키고 이벤트 (Folder.BeforeItemMove)가 트리거되는 경우에도 참조가 업데이트 된 항목 (첨부 파일이있는 항목)을 가져 오는 것을 방지 할 수 있습니다.

또한 mail.Save()가 당신을 위해 어떤 작업을 수행해 보았습니까?

이것은 내가 항목을 다 마자 바로 사용합니다.

public static void NullAndRelease(object o) 
{ 
    if (o == null) { 
     return; 
    } 

    try { 
     int releaseResult = 0; 
     do { 
      releaseResult = System.Runtime.InteropServices.Marshal.ReleaseComObject(o); 
     } while (releaseResult >= 0); 
    } catch { 
    } finally { 
     GC.Collect(); 
     GC.WaitForPendingFinalizers(); 
    } 
} 

내 경우에는 캐치에 메시지가 없으며 중요하지 않습니다. 누군가 com 객체가 아닌 다른 것으로 연결되는 참조를 전달하면됩니다. FinalReleaseComObject (o)를 사용해 볼 수도 있습니다.

+0

또한 부울로 만들 수도 있지만 내 경우에는 필요하지 않습니다. – maka

+0

저장하면 다음과 같은 결과가 나옵니다. 10 가지 요소가 있습니다. (이 요소는 옮겨 지거나 삭제되었습니다) – Chris

+0

무엇보다. 내 메일의 웹 인터페이스에 로그인 할 때 보낼 편지함에 첨부 파일이있는 경우 .... 아직 해결책을 얻지 못했습니다./ – Chris

관련 문제