Office 解决方案生成过程概述

在 Visual Studio 中生成 Microsoft Office 解决方案与生成其他应用程序非常类似。 但是,需要考虑特定于 Office 解决方案的几个因素。

有关如何生成应用程序的一般信息,请参见在 Visual Studio 中生成

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

Office 项目的项目输出

Office 项目的输出位置为项目名\bin\release 或项目名\bin\debug。 不能生成到部署目录中。

文档级项目

生成文档级项目时,项目输出中包含以下项:

  • 项目文档的一个副本。

  • 项目程序集以及**“复制本地”**属性设置为 true 的所有引用的程序集。

  • 应用程序清单,其文件扩展名为 .manifest。 有关更多信息,请参见 Office 解决方案的应用程序清单

  • 部署清单,其文件扩展名为 .vsto。 有关更多信息,请参见 Office 解决方案的部署清单

  • 程序数据库 (PDB) 文件。

应用程序级项目

生成应用程序级项目时,项目输出中包含以下项:

  • 项目程序集以及**“复制本地”**属性设置为 true 的所有引用的程序集。

  • 应用程序清单,其文件扩展名为 .manifest。 有关更多信息,请参见 Office 解决方案的应用程序清单

  • 部署清单,其文件扩展名为 .vsto。 有关更多信息,请参见 Office 解决方案的部署清单

  • 项目程序集的程序数据库 (PDB) 文件。

应用程序级项目的生成过程还会在开发计算机上创建加载外接程序所需的一组注册表项。 有关更多信息,请参见应用程序级外接程序的注册表项

如果生成包含窗体区域的 Outlook 外接程序项目,生成过程会向注册表中添加以下附加信息:

  • 与一个或多个窗体区域关联的每个邮件类的注册表项。

  • 每个窗体区域的注册表项,以及表示 Outlook 外接程序名称的关联值。

Outlook 需要此信息来加载窗体区域。

引用的程序集

可以从 Visual Studio Tools for Office 项目中引用程序集(包括类库项目)。 每个引用的程序集都具有一个名为**“复制本地”**的属性。 **“复制本地”**指示是否将程序集复制到输出目录中。 默认情况下,此选项设置为 true。 **“复制本地”**设置为 true 的每个引用的程序集都被复制到输出目录中。

生成过程期间的安全

Visual Studio 会自动配置开发计算机上的安全设置,以便在生成过程中向解决方案授予信任。 这样,解决方案将能在您对其进行调试时运行。

Office 项目使用证书来验证发布者。 Visual Studio 会自动创建一个临时证书来标识 Office 解决方案,并配置开发计算机以信任该临时证书。

有关更多信息,请参见保护 Office 解决方案的安全

网络项目

如果程序集或文档位于一个网络共享位置,则本地(“用户”级别)安全策略更新不足以允许解决方案运行。 要使解决方案运行,管理员必须先在“计算机”级别向网络共享位置上的程序集和文档授予完全信任。 有关如何设置安全策略的更多信息,请参见保护 Office 解决方案的安全

对于文档级项目,还必须将文档的完全限定位置添加到 Office 受信任文件夹列表。 有关更多信息,请参见向文档授予信任

更改目标平台

默认情况下,Office 项目的目标平台是**“任何 CPU”。 通常不应更改此设置。 使用“任何 CPU”**目标平台设置生成的 Office 解决方案可在 2007 Microsoft Office system 和 Microsoft Office 2010 的 32 位和 64 位版本中运行。

只有当您在创建将仅在 Microsoft Office 2010 的 64 位版本中运行的解决方案,并且该解决方案调用本机 64 位 API 时,才应将目标平台设置为 x64。 有关更改目标平台设置的更多信息,请参见如何:针对特定的 CPU 类型对应用程序进行优化

如果将目标平台设置为 x64,则解决方案将无法在 32 位版本的 Windows 或 Office(包括 2007 Microsoft Office system)中运行。 x64 目标平台要求解决方案在 64 位进程中运行。

使用“清理”命令

若要从开发计算机移除生成的项目文件,可以使用 Visual Studio 中的**“生成”菜单上的“清理”**命令。 **“清理”命令可删除生成输出位置上的所有文件。 对于应用程序级项目,“清理”**命令还可移除生成过程创建的注册表项。

请参见

任务

如何:生成 Office 解决方案

概念

在文档级项目中进行调试

其他资源

生成和调试 Office 解决方案

在 Visual Studio 中生成