c#收取獲取outlook中的郵件內容


界面如下:

 

 

 

直接上代碼如下:

Microsoft.Office.Interop.Outlook.Application myOutlookApp = new Microsoft.Office.Interop.Outlook.Application();
            Microsoft.Office.Interop.Outlook.NameSpace myNameSpace = myOutlookApp.GetNamespace("MAPI");
            //本地郵箱
            Microsoft.Office.Interop.Outlook.MAPIFolder myFolderInbox = myNameSpace.GetDefaultFolder(OlDefaultFolders.olFolderInbox);//獲取收件箱對象,如獲取其他箱可在參數中控制
            //Microsoft.Office.Interop.Outlook.MAPIFolder myFolder = myFolderInbox.Folders["xx"];//“xx”為收件箱下的一個文件夾
            //Microsoft.Office.Interop.Outlook.MAPIFolder MyParentFolder = myFolderInbox.Parent as Microsoft.Office.Interop.Outlook.MAPIFolder;//獲取收件箱上一級的文件夾對象,以次來獲取與收件箱同級的文件夾
            //Microsoft.Office.Interop.Outlook.MAPIFolder MyNewFolder = MyParentFolder.Folders["yy"];//“yy”為與收件箱同級的文件夾

            Microsoft.Office.Interop.Outlook.Items myMails = myFolderInbox.Items as Microsoft.Office.Interop.Outlook.Items;
            Console.WriteLine("mail Count:" + myMails.Count.ToString());
            int showCount = 0;
            for (int index = myMails.Count; index >0; index--) {
                //倒序才是從最近的收到的郵件顯示
                Microsoft.Office.Interop.Outlook.MailItem myMail = myMails[index] as Microsoft.Office.Interop.Outlook.MailItem;
                Console.WriteLine("======================================================");
                Console.WriteLine("Subject:" + myMail.Subject.ToString());
                Console.WriteLine("ReceivedTime:" + myMail.ReceivedTime.ToString());
                Console.WriteLine("Body:" + myMail.Body.ToString().Substring(0,10));
                showCount++;
                if (showCount > 10) break;//只顯示10封
            }

記得添加引 using Microsoft.Office.Interop.Outlook;

說明,

如果是 office2010用14.0.0.0  

如果是  office2013/2016用15.0.0.0 

 

代碼如下:https://files.cnblogs.com/files/q149072205/ReadEmailDemo.rar


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM