我很好奇,如果.NET可以這樣做。我編寫了一個小型的C#Windows GUI應用程序,我想知道是否有任何方法「利用」Microsoft Outlook 2010並檢查它是否有任何新的(未打開的)電子郵件?一般來說,這種狀況將通過一個信封圖標在系統托盤中的存在來表示:有沒有什麼辦法可以知道Outlook 2010是否有新的C#電子郵件#
1
A
回答
1
希望這有助於...
下如何演示功能到Outlook文件夾中retreive從項目數據使用.NET(稱爲「MySubFolderName」收件箱文件夾下):
首先添加一個引用到Outlook COM對象項目:
在VS.NET右鍵單擊一個引用d選擇添加參考。 選擇COM選項卡 選擇「Microsoft Outlook 11.0 Object Library」(這是用於MS Office 2003 - 我認爲10.0用於Office XP)並單擊Select。 單擊確定。 請注意,您可以訪問任何Outlook/Exchange對象類型,例如約會,筆記,任務,電子郵件等 - 只需使用intellisense來選擇哪一個(例如Microsoft.Office.Interop.Outlook ... ...參見定義變量'項目')。
下面的代碼:
Microsoft.Office.Interop.Outlook.Application app = null;
Microsoft.Office.Interop.Outlook._NameSpace ns = null;
Microsoft.Office.Interop.Outlook.PostItem item = null;
Microsoft.Office.Interop.Outlook.MAPIFolder inboxFolder = null;
Microsoft.Office.Interop.Outlook.MAPIFolder subFolder = null;
try
{
app = new Microsoft.Office.Interop.Outlook.Application();
ns = app.GetNamespace("MAPI");
ns.Logon(null,null,false, false);
inboxFolder = ns.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox);
subFolder = inboxFolder.Folders["MySubFolderName"]; //folder.Folders[1]; also works
Console.WriteLine("Folder Name: {0}, EntryId: {1}", subFolder.Name, subFolder.EntryID);
Console.WriteLine("Num Items: {0}", subFolder.Items.Count.ToString());
for(int i=1;i<=subFolder.Items.Count;i++)
{
item = (Microsoft.Office.Interop.Outlook.PostItem)subFolder.Items[i];
Console.WriteLine("Item: {0}", i.ToString());
Console.WriteLine("Subject: {0}", item.Subject);
Console.WriteLine("Sent: {0} {1}" item.SentOn.ToLongDateString(), item.SentOn.ToLongTimeString());
Console.WriteLine("Categories: {0}", item.Categories);
Console.WriteLine("Body: {0}", item.Body);
Console.WriteLine("HTMLBody: {0}", item.HTMLBody);
}
}
catch (System.Runtime.InteropServices.COMException ex)
{
Console.WriteLine(ex.ToString());
}
finally
{
ns = null;
app = null;
inboxFolder = null;
}
源@http://geekswithblogs.net/TimH/archive/2006/05/26/79720.aspx。
同時檢查:
http://msdn.microsoft.com/en-us/library/bb610835(v=office.14).aspx
相關問題
- 1. 有沒有辦法知道電子郵件是否用C#成功轉發?
- 2. 有什麼辦法可以知道報告是否有訂閱
- 3. 有沒有辦法檢測Outlook郵件是否沒有附件?
- 4. 有什麼辦法可以知道DataGridViewCell是否可見?
- 5. 有沒有辦法知道用戶是否打開郵件?
- 6. 有沒有什麼方法可以知道目錄是否包含子目錄?
- 7. 有沒有什麼辦法可以發送Outlook約會而不用包裹電子郵件?
- 8. 有沒有辦法知道文件名是否是Excel格式?
- 9. 有沒有辦法知道激活的QAction是什麼?
- 10. 有沒有辦法知道返回的對象是什麼?
- 11. 有沒有辦法知道一行是否更新?
- 12. 有沒有辦法判斷電子郵件是否有OneDrive附件?
- 13. 有沒有什麼辦法可以發郵件給我發郵件
- 14. iPhone - 有沒有辦法知道引用是否(仍然)有效?
- 15. 有沒有辦法知道手機是否有通話?
- 16. Android Webview:有沒有辦法知道以前的網址是什麼?
- 17. 有沒有辦法確定電子郵件是否到達目的地?
- 18. 有沒有辦法用電子郵件gem來測試電子郵件連接?
- 19. 有沒有辦法通過Outlook/Exchange編程調用電子郵件?
- 20. 有沒有什麼辦法可以知道,在android中改變wifi網絡?
- 21. 在VC++中,有沒有什麼辦法可以知道沒有任何頭文件的dll的導出類?
- 22. 有什麼辦法可以發送電子郵件與附件在Windows Phone
- 23. 有沒有什麼辦法可以知道低於特定值的顏色的RGB值是否較淺顏色
- 24. 有什麼辦法可以讓電子郵件的主題變成粗體嗎?
- 25. 有沒有什麼辦法可以讓我的C#XMLManager工作?
- 26. 有沒有什麼辦法可以放大c#中的按鈕?
- 27. 有沒有辦法讓python腳本知道它是什麼類型的文件?
- 28. 我如何知道是否有人打開了電子郵件?
- 29. 有什麼方法可以知道下載是否發生
- 30. 有沒有辦法知道一個對象的C#方法是否被調用?
你想查詢的Outlook,或者你想收到活動通知? –
投票或「審問」會更好。但是,我還有什麼選擇? – ahmd0
這可能非常接近你想要的:http://stackoverflow.com/questions/2055811/get-unread-mails-from-outlook –