2013-06-20 62 views
0

我使用outlook 2007模板和c#.net版本3.5,通過Visual Studio 2008中的VSTO創建Outlook Addin項目。VSTO - 從Outlook.MailItem獲取密件抄送收件人

我需要收集所有收件人的電子郵件地址,我通過Outlook.MailItem.Recipients屬性執行此操作。但是,這似乎沒有包含任何已經輸入到電子郵件BCC字段中的地址。有沒有一種方法可以解決這個問題,或者說它是「盲目的」,這意味着它不能以任何形式提供?

我使用的代碼如下:

private string GetEmailAddresses(Outlook.MailItem mail) 
    { 
     const string PR_SMTP_ADDRESS = "http://schemas.microsoft.com/mapi/proptag/0x39FE001E"; 
     string emailsFound = ""; 
     Outlook.Recipients recipients = mail.Recipients; 

     foreach (Outlook.Recipient recipient in recipients) 
     { 
      Outlook.PropertyAccessor pa = recipient.PropertyAccessor; 
      emailsFound += pa.GetProperty(PR_SMTP_ADDRESS).ToString() + "\n"; 
     } 

     return emailsFound; 
    } 

提前非常感謝!

回答

1

密件抄送收件人僅在「已發送郵件」文件夾中的已發送郵件上可用。按照定義,BCC收件人不會出現在傳入消息中。

+0

感謝德米特里,我認爲會是這種情況,但希望得到比我更聰明的人的意見! :-) –

相關問題