演练:创建您的第一个 Word 应用程序级外接程序

本介绍性演练说明如何创建 Microsoft Office Word 的应用程序级外接程序。您在这种类型的解决方案中创建的功能对应用程序本身可用,而与所打开的文档无关。

**适用于:**本主题中的信息适用于 Word 2013 和 Word 2010 的应用程序级项目。有关更多信息,请参见按 Office 应用程序和项目类型提供的功能

本演练阐释了以下任务:

  • 创建 Word 外接程序项目。

  • 编写使用 Word 的对象模型在文档保存时向其添加文本的代码。

  • 生成并运行此项目以对它进行测试。

  • 清理已完成的项目,使该外接程序在开发计算机上不再自动运行。

说明说明

对于在以下说明中使用的某些 Visual Studio 用户界面元素,您的计算机可能会显示不同的名称或位置。这些元素取决于您所使用的 Visual Studio 版本和您所使用的设置。有关更多信息,请参见 Visual Studio 设置

系统必备

您需要以下组件来完成本演练:

-

Visual Studio 2012 的一个版本,其中包含 Microsoft Office 开发工具。有关更多信息,请参见[将计算机配置为开发 Office 解决方案](bb398242\(v=vs.110\).md)。
  • Word 2013 或 Word 2010。

创建项目

在 Visual Studio 中创建新的 Word 外接程序项目

  1. 启动 Visual Studio。

  2. 在**“文件”菜单上指向“新建”,再单击“项目”**。

  3. 在模板窗格中,展开 visual C#Visual Basic,然后展开 Office/SharePoint

  4. 在展开的 Office/SharePoint 节点下,选择 Office 加载项 节点。

  5. 在项目模板列表中,选择**“Word 2010 外接程序”“Word 2013 外接程序”**。

  6. 在**“名称”**框中键入 FirstWordAddIn。

  7. 单击**“确定”**。

    Visual Studio 即会创建 FirstWordAddIn 项目并在编辑器中打开 ThisAddIn 代码文件。

编写向已保存文档添加文本的代码

接下来,将代码添加到 ThisAddIn 代码文件中。新的代码使用 Word 的对象模型向每个已保存文档添加样本文本。默认情况下,ThisAddIn 代码文件包含所生成的以下代码:

  • ThisAddIn 类的分部定义。此类提供了代码的入口点,并提供了对 Word 对象模型的访问。有关更多信息,请参见应用程序级外接程序编程。ThisAddIn 类的其余部分是在一个隐藏的代码文件中定义的,您不应修改此代码文件。

  • ThisAddIn_Startup 和 ThisAddIn_Shutdown 事件处理程序。当 Word 加载和卸载外接程序时会调用这些事件处理程序。使用这些事件处理程序,可在加载外接程序时对外接程序进行初始化,并在卸载外接程序时清理外接程序所使用的资源。有关更多信息,请参见Office 项目中的事件

向已保存的文档添加文本段落

  1. 在 ThisAddIn 代码文件中,将下面的代码添加到 ThisAddIn 类中。这段新代码定义了 DocumentBeforeSave 事件的事件处理程序,此事件在文档保存时引发。

    当用户保存文档时,此事件处理程序会将新文本添加到文档开头。

    Private Sub Application_DocumentBeforeSave(ByVal Doc As Word.Document, ByRef SaveAsUI As Boolean, _
        ByRef Cancel As Boolean) Handles Application.DocumentBeforeSave
        Doc.Paragraphs(1).Range.InsertParagraphBefore()
        Doc.Paragraphs(1).Range.Text = "This text was added by using code."
    End Sub
    
    void Application_DocumentBeforeSave(Word.Document Doc, ref bool SaveAsUI, ref bool Cancel)
    {
        Doc.Paragraphs[1].Range.InsertParagraphBefore();
        Doc.Paragraphs[1].Range.Text = "This text was added by using code.";
    }
    
    说明说明

    此代码使用索引值 1 访问 Paragraphs 集合中的第一个段落。尽管 Visual Basic 和 Visual C# 使用从 0 开始的数组,但 Word 对象模型中大多数集合的数组下限都是 1。有关更多信息,请参见在 Office 解决方案中编写代码

  2. 如果您使用的是 C#,请将以下必需代码添加到 ThisAddIn_Startup 事件处理程序中。此代码用于将 Application_DocumentBeforeSave 事件处理程序与 DocumentBeforeSave 事件连接起来。

    this.Application.DocumentBeforeSave += 
        new Word.ApplicationEvents4_DocumentBeforeSaveEventHandler(Application_DocumentBeforeSave);
    

为了在文档保存后对其进行修改,前面的代码示例使用以下对象:

测试项目

测试项目

  1. 按**“F5”**生成并运行项目。

    生成项目时,代码会编译成一个程序集,此程序集包含在项目的生成输出文件夹中。Visual Studio 还会创建一组注册表项,通过这些注册表项,Word 能够发现和加载此外接程序;Visual Studio 还将开发计算机上的安全设置配置为允许此外接程序运行。有关更多信息,请参见生成 Office 解决方案

  2. 在 Word 中,保存活动文档。

  3. 验证以下文本是否添加到了文档中。

    This text was added by using code.

  4. 关闭 Word。

清理项目

完成项目的开发后,请从开发计算机上移除外接程序程序集、注册表项和安全设置。否则,每次在开发计算机上打开 Word 时,此外接程序都将继续运行。

在开发计算机上清理已完成的项目

  • 在 Visual Studio 的**“生成”菜单中,单击“清理解决方案”**。

后续步骤

既然您已经创建了一个基本的 Word 应用程序级外接程序,您就可以从下面这些主题中了解关于如何开发外接程序的更多内容:

请参见

概念

Office 解决方案开发概述

其他资源

Word 解决方案

应用程序级外接程序编程

Word 对象模型概述

Office UI 自定义

生成 Office 解决方案

部署 Office 解决方案

Office 项目模板概述