演练:创建您的第一个 Outlook 应用程序级外接程序
本演练演示如何创建 Microsoft Office Outlook 的应用程序级外接程序。无论打开的是哪个 Outlook 项,在这种类型的解决方案中创建的功能对于应用程序本身均可用。有关更多信息,请参见Office 解决方案开发概述。
**适用于:**本主题中的信息适用于 Outlook 2013 和 Outlook 2010 的应用程序级项目。有关更多信息,请参见按 Office 应用程序和项目类型提供的功能。
本演练阐释了以下任务:
为 Outlook 创建 Outlook 外接程序项目。
编写借助于 Outlook 对象模型向新邮件的主题和正文中添加文本的代码。
生成并运行此项目以对它进行测试。
清理已完成的项目,使该外接程序在开发计算机上不再自动运行。
说明 |
---|
对于在以下说明中使用的某些 Visual Studio 用户界面元素,您的计算机可能会显示不同的名称或位置。这些元素取决于您所使用的 Visual Studio 版本和您所使用的设置。有关更多信息,请参见 Visual Studio 设置。 |
系统必备
您需要以下组件来完成本演练:
-
Visual Studio 2012 的一个版本,其中包含 Microsoft Office 开发工具。有关更多信息,请参见[将计算机配置为开发 Office 解决方案](bb398242\(v=vs.110\).md)。
- Outlook 2013 或 Outlook 2010。
创建项目
在 Visual Studio 中创建新的 Outlook 项目
启动 Visual Studio。
在**“文件”菜单上指向“新建”,再单击“项目”**。
在模板窗格中,展开 visual C# 或 Visual Basic,然后展开 Office/SharePoint。
在展开的 Office/SharePoint 节点下,选择 Office 加载项 节点。
在项目模板列表中,选择**“Outlook 2010 外接程序”或“Outlook 2013 外接程序”**。
在**“名称”**框中键入 FirstOutlookAddIn。
单击**“确定”**。
Visual Studio 即会创建 FirstOutlookAddIn 项目并在编辑器中打开**“ThisAddIn”**代码文件。
编写向每封新邮件中添加文本的代码
接下来,将代码添加到 ThisAddIn 代码文件中。新代码使用 Outlook 的对象模型向每封新邮件中添加文本。默认情况下,ThisAddIn 代码文件包含所生成的以下代码:
ThisAddIn 类的分部定义。此类提供了代码的入口点,并提供了对 Outlook 对象模型的访问。有关更多信息,请参见应用程序级外接程序编程。ThisAddIn 类的其余部分是在一个隐藏的代码文件中定义的,您不应修改此代码文件。
ThisAddIn_Startup 和 ThisAddIn_Shutdown 事件处理程序。当 Outlook 加载和卸载外接程序时会调用这些事件处理程序。使用这些事件处理程序,可在加载外接程序时对外接程序进行初始化,并在卸载外接程序时清理外接程序所使用的资源。有关更多信息,请参见Office 项目中的事件。
向每封新邮件的主题和正文中添加文本
在 ThisAddIn 代码文件的 ThisAddIn 类中,声明一个名为 inspectors 的字段。inspectors 字段保留对当前 Outlook 实例中检查器窗口集合的引用。此引用可防止垃圾回收器释放包含 NewInspector 事件的事件处理程序的内存。
Private WithEvents inspectors As Outlook.Inspectors
Outlook.Inspectors inspectors;
用下面的代码替换 ThisAddIn_Startup 方法。此代码为 NewInspector 事件附加一个事件处理程序。
Private Sub ThisAddIn_Startup(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Startup inspectors = Me.Application.Inspectors End Sub
private void ThisAddIn_Startup(object sender, System.EventArgs e) { inspectors = this.Application.Inspectors; inspectors.NewInspector += new Microsoft.Office.Interop.Outlook.InspectorsEvents_NewInspectorEventHandler(Inspectors_NewInspector); }
在 ThisAddIn 代码文件中,将下面的代码添加到 ThisAddIn 类中。此代码为 NewInspector 事件定义一个事件处理程序。
当用户创建新邮件时,此事件处理程序会向邮件的主题行和正文中添加文本。
Private Sub inspectors_NewInspector(ByVal Inspector As Microsoft.Office.Interop.Outlook.Inspector) Handles inspectors.NewInspector Dim mailItem As Outlook.MailItem = TryCast(Inspector.CurrentItem, Outlook.MailItem) If Not (mailItem Is Nothing) Then If mailItem.EntryID Is Nothing Then mailItem.Subject = "This text was added by using code" mailItem.Body = "This text was added by using code" End If End If End Sub
void Inspectors_NewInspector(Microsoft.Office.Interop.Outlook.Inspector Inspector) { Outlook.MailItem mailItem = Inspector.CurrentItem as Outlook.MailItem; if (mailItem != null) { if (mailItem.EntryID == null) { mailItem.Subject = "This text was added by using code"; mailItem.Body = "This text was added by using code"; } } }
为了修改每封新邮件,前面的代码示例使用以下对象:
ThisAddIn 类的 Application 字段。Application 字段返回一个 Application 对象,该对象表示 Outlook 的当前实例。
NewInspector 事件的事件处理程序的 Inspector 参数。Inspector 参数是一个 Inspector 对象,该对象表示新邮件的“检查器”窗口。有关更多信息,请参见Outlook 解决方案。
测试项目
在生成和运行项目时,请验证所添加的文本是否出现在新邮件的主题行和正文中。
测试项目
按**“F5”**生成并运行项目。
生成项目时,代码会编译成一个程序集,此程序集包含在项目的生成输出文件夹中。Visual Studio 还会创建一组注册表项,通过这些注册表项,Outlook 能够发现和加载此外接程序;Visual Studio 还将开发计算机上的安全设置配置为允许此外接程序运行。有关更多信息,请参见演练:创建您的第一个 Outlook 应用程序级外接程序。
在 Outlook 中,创建新电子邮件。
验证下面的文本已添加到邮件的主题行和正文中。
This text was added by using code.
关闭 Outlook。
清理项目
完成项目的开发后,请从开发计算机上移除外接程序程序集、注册表项和安全设置。否则,每次在开发计算机上打开 Outlook 时,此外接程序都将运行。
清理项目
- 在 Visual Studio 的**“生成”菜单中,单击“清理解决方案”**。
后续步骤
您已经创建了一个基本的 Outlook 应用程序级外接程序,现在可以从下面这些主题中了解有关如何开发外接程序的更多内容:
可以使用 Outlook 外接程序执行的常规编程任务。有关更多信息,请参见应用程序级外接程序编程。
使用 Outlook 的对象模型。有关更多信息,请参见Outlook 解决方案。
自定义 Outlook 的 UI,例如,向功能区中添加自定义选项卡或创建您自己的自定义任务窗格。有关更多信息,请参见Office UI 自定义。
生成和调试 Outlook 的应用程序级外接程序。有关更多信息,请参见生成 Office 解决方案。
部署 Outlook 的应用程序级外接程序。有关更多信息,请参见部署 Office 解决方案。