TearSnow Fan


VS2005、VS2008、VS2010、VS2012解决方案和工程项目文件转换方法

由于不同项目的需要,自己的电脑上安装了Visual Studio 2005、2008、2010等版本,近期还体验了VS2012。众所周知,使用某个Visual Studio版本创建的项目或解决方案,不能直接使用其他版本的Visual Studio打开,而必须经过转换。

使用高版本的Visual Studio软件打开由低版本的Visual Studio创建的项目或解决方案时,会自动打开“Visual Studio转换向导”,转换过程中可以将旧的项目或解决方案进行备份(默认备份到解决方案文件夹下的/Backup文件夹中),这种方法由于启用了向导模式,比较简单,不详细介绍。

另一种比较直接的方法是通过修改Soultion文件和Project文件中的版本信息,这种方法既可以从低版本升级到高版本,又可以从高版本转换到低版本。本文详细介绍该方法。

以这个使用Visual Studio 2005创建的名为“CuteMobileSearch”的解决方案为例,这里示范将其转换为VS2008能够打开的解决方案。

 

使用记事本打开CuteMobileSearch.sln解决方案文件,如下图

 

 1、修改解决方案文件:将红框处版本9.00改为10.00;将Visual Studio 2005改为Visual Studio 2008,如下图:

列出所有Visual Studio版本和对应的Format Version如下:

Visual Studio 2005 - Version  9.00

Visual Studio 2008 - Version 10.00

Visual Studio 2010 - Version 11.00

Visual Studio 2012 - Version 12.00

2、修改项目文件

进入各工程文件夹(如果解决方案下只有一个工程,一般和解决方案同名),打开扩展名为*.csproj的项目文件,在文件开头的Project标签中加入 ToolsVersion="3.5",添加在任何位置都可以,用空格分隔。

将 Import Project 处的“MSBuildBinPath”改为“MSBuildToolsPath”(只有VS2005是MSBuildBinPath,VS2008及以后的版本均为MSBuildToolsPath)。

 如果想把改项目彻底升级到.NET Framework 3.5,可以在解决方案管理器右击项目文件-〉属性,修改目标框架,如图示:

 

以上是将VS2005创建的解决方案和项目转换为VS2008的一个实例,其他的转换是类似的。例如将使用VS2008创建的工程转换为VS2010,则需要:

1、将解决方案文件中的版本号由10.00改为11.00,将Visual Studio 2008改为Visual Studio 2010;

2、打开项目文件夹中的项目文件,将文件开头的ToolsVersion="3.5"改为ToolsVersion="4.0"(VS2008及以后的版本之间互转不需要修改MSBuildToolsPath);

3、可以根据需要,修改项目属性中的.Net Framework 版本。

如果需要用低版本的Visual Studio打开高版本所创建的工程,可以依据上述步骤逆向操作即可。

本文固定链接: http://blog.xieyc.com/vs2005-2012-solution-and-project-convertion/ | 小谢的小站

该日志由 xieyc 于2013年04月27日发表在 编程 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: VS2005、VS2008、VS2010、VS2012解决方案和工程项目文件转换方法 | 小谢的小站
关键字: ,

目前共有 6 条留言 【 访客:5 条, 博主:1 条 】 访客以 5:1 暂时领先博主!

  1. 4楼
    彬彬哥:

    呵呵

    2013-05-02 19:31
  2. 地板
    海纳百川:

    试试看行不行,好像没成功啊。

    2013-09-03 15:46
    • 你是转了哪个不成功的?呵呵,应该是可以的,我都试了。@海纳百川

      2013-09-04 09:20
  3. 板凳
    紫塞三更雨:

    找不到拓展名为*.csproj的文件

    2015-04-29 12:02
  4. 沙发
    lele:

    不行啊~根本就没有显示tools Version的地方

    2016-03-14 22:39

发表评论

:wink: :neutral: :mad: :twisted: :smile: :shock: :sad: :roll: :oops: :eek: :mrgreen: :lol: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

快捷键:Ctrl+Enter