我想從我的C#winforms應用程序中打開Outlook中的特定電子郵件。在C#中打開Outlook中的特定郵件項目#
目前我有以下代碼:
//...Get Folder & Entry ID for last Email in Sent Box
Outlook.Application myApp = new Outlook.ApplicationClass();
Outlook.NameSpace mapiNameSpace = myApp.GetNamespace("MAPI");
Outlook.MAPIFolder mySentBox = mapiNameSpace.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderSentMail);
Outlook.MailItem myMail = ((Outlook.MailItem)mySentBox.Items[1]);
string guid = myMail.EntryID;
string folderEntryID = mySentBox.EntryID;
string folderStoreID = mySentBox.StoreID;
string mailAddressee = myMail.To;
MessageBox.Show(mailAddressee);
//...Attempt to Open that Email at a later date
Outlook.MAPIFolder getFolder = (Outlook.MAPIFolder)mapiNameSpace.GetFolderFromID(folderEntryID, folderStoreID);
Outlook.MailItem getItem = (Outlook.MailItem)getFolder.Items.Find("[EntryID] = " + guid);
getItem.Display();
第一代碼的第二部分將在不同的時間運行,儘管它們在目前的測試方法相同。
第一部分從Outlook獲取mst最近發送的電子郵件的相關ID。這部分似乎工作正常,因爲我的內置Messagebox的證據。
然而,第二部分是不工作,我努力找到正確的代碼來訪問並打開該特定的mailItem已獲得其ID和文件夾位置在第一部分。
任何人都可以爲我完成這個小項目請。
那麼如何搜索單個電子郵件。所有過濾標準可能會返回多個電子郵件。我有他的電子郵件的具體ID,當然有一種方法可以用它打開那一封電子郵件? – PJW