用Visual studio 2005打开Visual studio 2008 开发的项目

方法一参考:

1. 用记事本打开解决方案文件(扩展名为*.sln).将
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
把上面这两句,改成
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
即可.

2. 用记事本打开每个项目文件[项目名].csproj,在<PropertyGroup>节点下移除如下节点:
<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
并且修改ProductVersion和Import两个节点为如下:
<ProductVersion>8.0.50727</ProductVersion>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />

方法二参考:

1.用文本编辑器打开sln文件

Microsoft Visual Studio Solution File, Format Version 10.00

# Visual Studio 2008

将以上内容修改后成为以下内容:

Microsoft Visual Studio Solution File, Format Version 9.00

# Visual Studio 2005

2.用文本编辑器打开csproj文件,在文件的开头删除以下内容:

修改根节点:

<VisualStudioProject

ProjectType="Visual C++"

Version="9.00"

Name="Demo"

ProjectGUID="{9663A31E-44A8-40F9-A898-9F36716D5166}"

RootNamespace="Demo"

Keyword="MFCProj"

TargetFrameworkVersion="131072"

>

将Version="9.00" 改为 Version="8.00"

找到以下这个XML文件节点

<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

删除一个属性ToolsVersion,成为以下内容:

<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

找到以下这个XML文件节点

<Import Project="$(MSBuildToolsPath)Microsoft.CSharp.targets" />

将MSBuildToolsPath 改为 MSBuildBinPath

经修改后,成为以下内容:

<Import Project="$(MSBuildBinPath)Microsoft.CSharp.targets" />

注意:要在VS2005下运行VS2008的项目一定不能使用到VS2008有,VS2005无的类和命名空间,同时第一次运行的时候要删除系统默认添加的新版的命名空间和类。

如:using System.Linq;

using System.Collections.Generic;

反之,当用VS2008打开VS2005的项目时,可能会提示“项目C:\XXX.csproj 所需的应用程序未安装。请确保已安装项目类型(.csproj)的应用程序。”

解决当前问题的方案为: 首先打开VS2008,通过“文件->打开->项目/解决方案”来打开已存在的VS2005项目,VS2008会要求进行项目转换。 转换成功后可直接运行。

原文地址:https://www.cnblogs.com/huanghai223/p/1865007.html