将VS2008工程在VS2005中打开(转载加整理)
第一种方法:
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文件,将:
<Project ToolsVersion="3.5" DefaultTargets="Build"
中的ToolsVersion="3.5"删除
然后将:
<Import Project="$(MSBuildToolsPath)
改为:
<Import Project="$(MSBuildBinPath)第二种方法:
先用vs2005创建一个新项目,然后将vs2008项目中的文件导入到新项目中,然后在新项目中添加必要的引用即可。
第三种方法:
1.用记事本打开解决方案文件[解决方案名].sln,然后修改最上面两行为如下代码:
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" />
3. 别忘了在根节点下,最后还有一个 ToolsVersion="3.5" 需要删掉。这样应该就可以打开了。
补充:常见问题解决
1.有时在打开项目时会遇到错误:
无法读取项目文件 "" 请确认声明中的路径正确,且磁盘上存在该文件。
解决办法:
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets" />
改为:
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v8.0\WebApplications\Microsoft.WebApplication.targets" Condition="$(Solutions.VSVersion) == 8.0" />
这次我是改为8.0后才实现加载项目的。
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets" Condition="$(Solutions.VSVersion) == 9.0" />
2. 提示“未找到导入的项目“$:\Boo.Microsoft.Build.targets”。请确认 <Import> 声明中的路径正确,且磁盘上存在该文件。
解决办法:
将项目文件(.csproj)用记事本打开,然后找到<Import >节点,作如下操作:
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
替换为:
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />