2013-05-22 2 views
10

Oki, 그래서 Outlook .msg 템플릿 작업 중입니다. 프로그래밍 방식으로 열면 내 dB에있는 값을 기준으로 값을 삽입합니다.mailitem.cc 필드에 여러 수신자를 추가하는 방법 C#

ex. 내가 대신 다음과 같은 일을, "받는 사람"필드에서

mailitem.To = a + ";" + b + ";" + c; 

여러 reciepients를 추가 할 때 나는 루프를하고 있어요 특히, 간단하다, 무슨 아래 않습니다.

mailitem.Recipients.add("a"); 
    mailitem.Recipients.add("b"); 
    mailitem.Recipients.add("c"); 

내 문제는 내가 아니라 단지 "받는 사람"필드에 작동 이상 "CC"필드와 기능에 여러 수신자를 추가 할 수있다. 어떻게 문자열 조작을하지 않고도 "CC"필드에 여러 수신자를 추가 할 수 있습니다.

일반적으로 내가

mailitem.CC = a + ";" + b + ";" + c; 

메신저 interop.outlook를 사용하여 템플릿에서는 MailItem을 만드는과 같이 공통 평가받는 사람을 추가합니다.

미리 감사드립니다.

답변

11

수신자가 두 명인 List 인 경우 다음과 같이 할 수 있습니다.

편집 : 전체 코드가 포함됩니다.

var oApp = new Microsoft.Office.Interop.Outlook.Application(); 
var oMsg = (MailItem) oApp.CreateItem(OlItemType.olMailItem); 

Recipients oRecips = oMsg.Recipients; 
List<string> sTORecipsList = new List<string>(); 
List<string> sCCRecipsList = new List<string>(); 

sTORecipsList.Add("ToRecipient1"); 

sCCRecipsList.Add("CCRecipient1"); 
sCCRecipsList.Add("CCRecipient2"); 
sCCRecipsList.Add("CCRecipient3"); 

Recipients oRecips = oMsg.Recipients; 

foreach (string t in sTORecipsList) 
{ 
    Recipient oTORecip = oRecips.Add(t); 
    oTORecip.Type = (int) OlMailRecipientType.olTo; 
    oTORecip.Resolve(); 
} 

foreach (string t in sCCRecipsList) 
{ 
    Recipient oCCRecip = oRecips.Add(t); 
    oCCRecip.Type = (int) OlMailRecipientType.olCC; 
    oCCRecip.Resolve(); 
} 

oMsg.HTMLBody = "Test Body"; 
oMsg.Subject = "Test Subject"; 
oMsg.Send(); 
+0

가 작동하지 않으면 Outlook 2007/office 2007에서 작동해야합니까? – Mana

+0

@Mana : 당신이 직면 한 문제는 무엇입니까? –

+0

이 줄을 설명해 주시겠습니까? 받는 사람 oCCRecip = oRecips.Add (p_sUserID); .add()에서 p_sUserID는 어디에서 무엇을하고 있습니까? – Mana

3

설명 된대로받는 사람 속성을 here으로 사용합니다 (두 번째 예를 찾으십시오). 컬렉션에 많은 사람들을 추가 한 다음 대상 유형을 to에서 CC으로 변경할 수 있습니다.

+0

예 VBA를위한 것으로, 메신저 C#에서 프로그래밍, 그리고 내가 VBA로 프로그래밍 된 경우에도는 CreateItem 나는 그들이 동일한 API를했다고 생각 office2007 – Mana

+0

를 사용하여 메신저 때문에 작동하지 않을 것입니다. 그러나 당신은 무엇을 알고 있습니다, 나는 라 메쉬의 대답이 내 것보다 낫다. – Renan

+1

CreateItem은 모든 버전의 Outlook에서만 작동합니다. –

관련 문제