创建第一个 Word 应用程序级外接程序

来源:互联网 发布:买火车票下载什么软件 编辑:程序博客网 时间:2024/05/10 12:41

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

本演练阐释以下任务:

  1. 创建 Word 2003或 Word 2007 的 Word外接程序项目。
  2. 编写使用 Word的对象模型在文档保存时向其添加文本的代码。
  3. 生成并运行此项目以对它进行测试。
  4. 清理已完成的项目以使此外接程序不再在开发计算机上自动运行。

 

先决条件

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

  1. Visual Studio Tools for Office(Visual Studio 2008专业版 和 Visual Studio Team System的可选组件)。
  2. Word 2003 或 Word 2007

  默认情况下,Visual Studio Tools for Office 随列出的 Visual Studio 版本一起安装。若要检查它是否安装在计算机上,请参见安装 Visual Studio Tools for Office

 

创建项目

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

  1. 启动 Visual Studio。
  2. 在“文件”菜单上,指向“新建”,再单击“项目”。
  3. 在“项目类型”窗格中,展开“Visual C#”或“Visual Basic”,然后展开“Office”。
  4. 如果您要开发 Word 2007 外接程序,请选择“2007”文件夹;如果您要开发 Word 2003 外接程序,请选择“2003”文件夹。
  5. 在“模板”窗格中,选择“Word 2003外接程序”或“Word 2007外接程序”。
  6. 在“名称”框中键入 FirstWordAddIn。
  7. 单击“确定”。

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

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

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

  1. ThisAddIn类的分部定义。此类提供了代码的入口点,并提供了对 Word 对象模型的访问。有关更多信息,请参见AddIn宿主项。ThisAddIn类的其余部分在一个隐藏的代码文件中定义,您不应修改此代码文件。
  2. ThisAddIn_Startup和 ThisAddIn_Shutdown 事件处理程序。当 Word 加载和卸载外接程序时会调用这些事件处理程序。在加载外接程序时使用这些事件处理程序对其进行初始化,并在卸载外接程序时使用它们清理外接程序使用的资源。有关更多信息,请参见Visual Studio Tools for Office项目事件

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

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

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

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.";}

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

this.Application.DocumentBeforeSave += new Word.ApplicationEvents4_DocumentBeforeSaveEventHandler(Application_DocumentBeforeSave);
 
  为了在文档保存后对其进行修改,前面的代码示例使用以下对象:
  1. ThisAddIn类的 Application 字段。Application字段返回一个Microsoft.Office.Interop.Word..::.Application 对象,该对象表示 Word的当前实例。
  2. DocumentBeforeSave事件的事件处理程序的 Doc 参数。Doc参数是一个表示已保存文档的 Microsoft.Office.Interop.Word..::.Document 对象。有关更多信息,请参见Word对象模型概述

 

测试项目

  1. 按“F5”生成并运行项目。
    生成项目时,代码会编译成一个程序集,此程序集包含在项目的生成输出文件夹中。Visual Studio还会创建一组注册表项,通过这些注册表项,Word 能够发现和加载此外接程序;Visual Studio 还将开发计算机上的安全设置配置为允许此外接程序运行。有关更多信息,请参见
    Office解决方案生成过程概述
  2. 在 Word 中,保存活动文档。
  3. 验证以下文本是否添加到了文档中。
    This text was added by using code.
  4. 关闭 Word。

 清理项目

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

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

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

 后续步骤

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

  1. 您可以在外接程序中执行的常规编程任务:应用程序级外接程序编程
  2. 特定于 Word外接程序的编程任务:Word应用程序级外接程序开发
  3. 使用 Word的对象模型:Word对象模型概述
  4. 自定义 Word的 UI,例如,通过向功能区添加自定义选项卡或创建您自己的自定义任务窗格:Office UI自定义
  5. 生成和调试 Word的应用程序级外接程序:生成和调试 Office解决方案
  6. 部署 Word的应用程序级外接程序:部署 Office解决方案

 

概念

Office解决方案开发概述

Word应用程序级外接程序开发

应用程序级外接程序编程

Word对象模型概述

Office UI自定义

Visual Studio Tools for Office项目模板概述

 

参考

2003 Microsoft Office外接程序项目模板

2007 Microsoft Office外接程序项目模板

 

其他资源

生成和调试 Office解决方案

部署 Office解决方案