运行迁移到 .NET Framework 4 或 .NET Framework 4.5 的 Office 项目所需的更改

如果 Office 项目的目标框架更改为 .NET Framework 4 或 .NET Framework 4.5 从 .NET framework 的早期版本,则必须执行以下任务以确保该解决方案可运行在开发计算机和最终用户计算机上:

  • 如果从 Visual Studio 2008 升级了项目,请从该项目中移除 SecurityTransparentAttribute

  • 在 Visual Studio 中执行 Clean 命令,以便能够在开发计算机上运行或调试项目。

  • 更新项目的 .NET Framework 系统必备组件。

  • 如果在更改目标框架之前使用 ClickOnce 部署了解决方案,则最终用户还必须重新安装该解决方案。

有关其中每项任务的更多信息,请参见以下各节。

从已从 Visual Studio 2008 升级的项目移除 SecurityTransparent 特性

如果从 Visual Studio 2008 升级 Office 项目,并且该项目的目标框架随后更改 .NET Framework 4 或 .NET Framework 4.5,必须从项目中移除 SecurityTransparentAttribute。Visual Studio 不会自动移除此特性。如果不移除此特性,则会收到错误消息,在编译项目时。

有关 Visual Studio 可以更改已升级项目的目标框架到 .NET Framework 4 或 .NET Framework 4.5的条件的更多信息,请参见 升级和迁移 Office 解决方案

移除 SecurityTransparentAttribute

  1. 在 Visual Studio 中打开项目后,打开**“解决方案资源管理器”**。

  2. 在**“属性”节点(适用于 C#)或“我的项目”**节点(适用于 Visual Basic)下,双击 AssemblyInfo 代码文件以在代码编辑器中打开。

    说明说明

    在 Visual Basic 项目中,必须单击“解决方案资源管理器”中的“显示所有文件”按钮,才能查看 AssemblyInfo 代码文件。

  3. 找到 SecurityTransparentAttribute,从文件中移除或注释掉该特性。

    <Assembly: SecurityTransparent()>
    
    [assembly: SecurityTransparent()]
    

执行“清理”命令以在开发计算机上调试或运行项目

如果 Office 项目生成后,在项目的目标框架更改为 .NET Framework 4 或 .NET Framework 4.5之前,必须执行 清理 命令然后重新生成项目,在更改目标框架后。如果不执行**“清理”**命令,则在尝试调试或或运行重定目标的项目时,会收到 COMException

有关**“清理”**命令的更多信息,请参见 生成 Office 解决方案

更新系统必备组件以进行部署

当您重定 Office 项目的目标为 .NET Framework 4 或 .NET Framework 4.5时,还必须更新。先决条件 对话框中相应的 .NET framework 系统必备组件。否则,ClickOnce 部署或 InstallShield limited Edition 项检查和安装 .NET framework 的早期版本。

有关更新系统必备组件以部署到最终用户计算机的更多信息,请参见如何:在最终用户计算机上安装系统必备组件以便运行 Office 解决方案

在最终用户计算机上重新安装解决方案

如果使用 ClickOnce 部署面向 .NET framework 3.5 然后的 Office 解决方案。重定将该项目的目标 .NET Framework 4 或 .NET Framework 4.5,最终用户必须卸载解决方案然后重新安装该解决方案,在发布之后。如果重新发布重定目标的解决方案并在最终用户计算机上更新该解决方案,则最终用户运行更新的解决方案时将收到 COMException

请参见

概念

将 Office 解决方案迁移到 .NET Framework 4 或 .NET Framework 4.5