原文作者:McLean Schofield

原文链接:http://blogs.msdn.com/b/vsto/archive/2010/06/02/fixing-compile-and-run-time-errors-after-retargeting-vsto-projects-to-the-net-framework-4-mclean-schofield.aspx

 

现在Visual Studio 2010已经发布,想要使用.NET Framework 4提供的新功能,你可以升级以前的项目。或者你已经使用Visual Studio 2010发布.NET Framework 3.5的项目,而现在要把项目部署在.NET Framework 4.0上。把老的项目部署在.NET Framework 4.0.运行时,可能会遇到编译和运行时的错误,如何解决这些错误?

 

重定向一个VSTO项目在the .NET Framework 4上是很简单的。如果你是用Visual Studio 2010创建项目,你可以使用操作指南重定向链接。在没装.NET Framework 3.5,如果你是重定向一个项目到Visual Studio 2010.NET Framework 4.0)可以在弹出的升级对话框上,把项目定向到.NET Framework 4.0上。更多的信息,可以参考以往的文章“重定向当项目升级”.

当项目重定向后,你的大部份工作是完成了。你可以开始在项目继续写代码。当然很多项目-任何项目使用了Ribbon designer, OutLook使用form region,Excel/Word项目便用了某些特定的功能如smart tags和方法GetVstoObject/HasVstoObject – 当重定向项目时,你会会获取编译错误,Add-in没法工作。在出现这些情况的时候,你的代码需要一些修改。当碰到这些情况时,你可参照下面MSDN提供的文章来修改你的代码:

 

升级到.NET Framework 4.0Office项目的一些改变。

升级到.NET Framework 4.0时,更新Excel/Word项目。

升级到.NET Framework 4.0, 更新Ribbon 用户定制.

升级到.NET Framework 4.0,Outlook项目更新Form Regions.

 

除了手把把的教,下面的视频教程是几种特殊情况下的项目重定。看下面的链接:

 

         我如何做:重定向.NET Framework 3.5 Outlook Add-in.NET Framework 4.0.

           我如何做:重定向.NET Framework 3.5 Word 2007 Add-in.NET Framework 4.0.

         Visual Studio 2010 升级Outlook客户端程序到.NET Framework 4.0.

 

背景介绍

VSTO 部门执行支持新的.NET Framework 4嵌入Interop类型功能,他们同样修改了特定的VSTO运行时的程序模型的一些功能。例如,嵌入Interop类型只能与接口调用。VSTO运行时在.NET Framework 4更多的支持接口而不是类。这些改变是根据生产代码和开发者写代码的习惯,因此重定一个项目需要手动的更改代码。

 

.NET Framework 4,如果你兴趣多读一些嵌入Interop类型的功能,这些改变是关于Visual Studio 2010 Tools工具和Office运行时。可以参照下面文章.

 

博客文章

     VSTO 2010运行时设计

     介绍VSTO 2010运时组件

   为什么升级.NET Framework 3.54.0.

   利用Visual Studio 2010升级项目

MSDN文章:

    改变Office项目设计重定向.NET Framework 4.0

Visual Studio Tools for Office运行时概述

设计和创建Office解决方案。