C# Outlook 2010加载项:如何浏览所有邮件?

C# Outlook 2010加载项:如何浏览所有邮件?,c#,email,vsto,outlook-addin,C#,Email,Vsto,Outlook Addin,我正在用C#编写一个简单的Outlook 2010插件,它将遍历所有电子邮件,并在每条邮件的主题和正文中搜索特定文本。外接程序支架(就像集成到Outlook的外接程序一样,一个带有一串按钮的自定义功能区——诸如此类的东西)已经就位并正常工作,但是,出乎意料的是,我似乎无法理解如何完成邮件的中心部分。尝试寻找工作示例或教程没有产生任何结果,有很多“hello world”的东西,但没有其他 如果您能提示我如何在外接程序中查看邮件,我将不胜感激。您可以从收件箱文件夹中获取邮件: Outlook.MA

我正在用C#编写一个简单的Outlook 2010插件,它将遍历所有电子邮件,并在每条邮件的主题和正文中搜索特定文本。外接程序支架(就像集成到Outlook的外接程序一样,一个带有一串按钮的自定义功能区——诸如此类的东西)已经就位并正常工作,但是,出乎意料的是,我似乎无法理解如何完成邮件的中心部分。尝试寻找工作示例或教程没有产生任何结果,有很多“hello world”的东西,但没有其他


如果您能提示我如何在外接程序中查看邮件,我将不胜感激。

您可以从收件箱文件夹中获取邮件:

Outlook.MAPIFolder inbox = 
    Globals.ThisAddIn.Application.Session.DefaultStore
    .GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);

foreach (object item in inbox.Items)
{
    Outlook.MailItem mail = item as Outlook.MailItem;

    if (mail != null)
    {
        // use the mail item
    }
}

这一点以前已经得到过无数次的回答。例如,检查一下。谢谢!看过这类代码,但“System.Windows.Forms.Application不包含会话定义”…这是错误的命名空间。您应该使用Outlook=Microsoft.Office.Interop.Outlook
;这不是
应用程序
。从cs文件顶部删除WinForms命名空间导入,或者如果需要,为其创建别名。好的,但现在“名称‘应用程序’在当前上下文中不存在”。。。我显然做错了什么,但是什么?以下是我在文件中“使用”部分的内容:使用系统;使用System.Collections.Generic;使用System.IO;使用System.Linq;运用系统反思;使用System.Runtime.InteropServices;使用系统文本;使用Office=Microsoft.Office.Core;使用Outlook=Microsoft.Office.Interop.Outlook;然后在其前面加上
Globals.ThisAddIn.
。更新了答案。