若要为 Microsoft Office Outlook 开发 VSTO 外接程序,可以与 Outlook 对象模型提供的对象进行交互。 Outlook 对象模型提供类和接口,这些类和接口表示用户界面中的项。 例如,对象 Application 表示整个应用程序,对象 Folder 表示包含电子邮件或其他项目的文件夹,对象 MailItem 表示电子邮件。
本主题简要概述了 Outlook 对象模型中的某些主要对象。 有关可以了解有关整个 Outlook 对象模型的详细信息的资源,请参阅 “使用 Outlook 对象模型”文档。
适用于: 本主题中的信息适用于 Outlook 的 VSTO 外接程序项目。 有关详细信息,请参阅 Office 应用程序和项目类型提供的功能。
访问 Outlook 项目中的对象
Outlook 提供了许多可以与之交互的对象。 若要有效地使用对象模型,应熟悉以下顶级对象:
应用程序对象
该 Application 对象表示 Outlook 应用程序,它是 Outlook 对象模型中的最高级别对象。 此对象的一些最重要的成员包括:
- 可用于创建新项目(如电子邮件、任务或约会)的 CreateItem 方法。 
- 该 Explorers 属性可用于访问在 Outlook 用户界面(UI)中显示文件夹内容的窗口。 
- 该 Inspectors 属性可用于访问显示单个项内容的窗口,例如电子邮件或会议请求。 - 若要获取对象的实例 Application ,请使用项目中类的应用程序 - ThisAddIn字段。 有关详细信息,请参阅 程序 VSTO 外接程序。
注释
为了帮助避免使用 Outlook 对象模型防护阻止的属性和方法时出现安全警告,请从类的 ThisAddIn “应用程序”字段中获取 Outlook 对象。 有关详细信息,请参阅 Office 解决方案的特定安全注意事项。
Explorer 对象
该 Explorer 对象表示一个窗口,该窗口显示包含电子邮件、任务或约会等项目的文件夹的内容。 该 Explorer 对象包括可用于修改窗口的方法和属性,以及窗口更改时引发的事件。
若要获取对象 Explorer ,请执行以下作之一:
- 要使用Explorers对象的Application属性来访问 Outlook 中的所有Explorer对象。 
- 使用ActiveExplorer对象的方法Application来获取当前具有焦点的Explorer。 
检查器对象
该 Inspector 对象表示显示单个项目(如电子邮件、任务或约会)的窗口。 该 Inspector 对象包括可用于修改窗口的方法和属性,以及窗口更改时引发的事件。
若要获取对象 Inspector ,请执行以下作之一:
- 使用Inspectors对象的属性Application来访问 Outlook 中的所有Inspector对象。 
- 使用Application对象的方法ActiveInspector获取当前具有焦点的Inspector。 
- 使用特定项的方法(例如 MailItem 或 AppointmentItem)来检索与其关联的检查器。 
文件夹对象
该 Folder 对象表示包含电子邮件、联系人、任务和其他项目的文件夹。 Outlook 提供 16 个默认 Folder 对象。
默认 Folder 对象由 OlDefaultFolders 枚举值定义。 例如,
Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox 对应于 Outlook 中的 收件箱 文件夹。
有关演示如何访问默认值 Folder 和新建 Folder的示例,请参阅 How to: 以编程方式创建自定义文件夹项。
MailItem 对象
该 MailItem 对象表示电子邮件。 MailItem 对象通常位于 收件箱、 已发送邮件和 发件箱等文件夹中。 MailItem 公开可用于创建和发送电子邮件的属性和方法。
有关如何创建电子邮件的示例,请参阅 如何:以编程方式创建电子邮件项。
AppointmentItem 对象
该 AppointmentItem 对象表示 日历 文件夹中的会议、一次性约会或定期约会或会议。 该 AppointmentItem 对象包括执行作的方法,例如响应或转发会议请求,以及指定会议详细信息的属性,例如位置和时间。
有关如何创建约会的示例,请参阅 如何:以编程方式创建会议请求。
TaskItem 对象
该 TaskItem 对象表示在指定时间范围内执行的任务。 TaskItem 对象位于 Tasks 文件夹中。
若要创建任务,请使用对象的 CreateItem 方法 Application ,并传入参数的值 olTaskItem 。
ContactItem 对象
该 ContactItem对象表示 联系人 文件夹中的联系人。 ContactItem 对象包含他们所代表人员的各种联系信息,例如街道地址、电子邮件地址和电话号码。
有关如何创建新联系人的示例,请参阅 How to: 以编程方式向 Outlook 联系人添加条目。 有关演示如何搜索现有联系人的示例,请参阅 “如何:以编程方式搜索特定联系人”。
使用 Outlook 对象模型文档
有关 Outlook 对象模型的完整信息,可以参考 Outlook 主互操作程序集(PIA)和 VBA 对象模型参考。
主要互操作程序集引用
Outlook 2010 的主互操作程序集中的类型记录在 Outlook PIA 引用文档中。 有关详细信息,请参阅 Outlook 2010 主互操作程序集参考。
除了为 PIA 中的所有类型提供信息外,本文档还提供了有关常见 Outlook 自动化任务的 PIA 结构和代码示例的其他信息。
VBA 对象模型参考
VBA 对象模型参考文档描述了 Outlook 对象模型如何向 Visual Basic for Applications(VBA)代码公开。 有关详细信息,请参阅 Outlook 2010 对象模型参考。
VBA 对象模型引用中的所有对象和成员都对应于 Outlook PIA 中的类型和成员。 例如,VBA 对象模型引用中的 Inspector 对象对应于 Inspector Outlook PIA 中的对象。 尽管 VBA 对象模型引用为大多数属性、方法和事件提供了代码示例,但如果要在使用 Visual Studio 创建的 Outlook VSTO Add-In 项目中使用这些代码,则必须将此引用中的 VBA 代码转换为 Visual Basic 或 Visual C# 。
相关主题
| Title | Description | 
|---|---|
| 处理联系人条目 | 提供介绍如何管理联系人任务的主题。 | 
| 处理邮件 | 提供展示如何使用邮件项完成任务的主题。 | 
| 使用文件夹 | 提供演示如何使用文件夹执行任务的主题。 | 
| 使用日历条目 | 提供演示如何使用日历项执行任务的主题。 | 
| 如何:以编程方式确定当前 Outlook 项目 | 演示如何显示当前文件夹的名称以及有关所选项目的某些信息。 |