需要把VS2010下的工程转成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;
.csproj文件中找到如下一行:
<ImportProject="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets"/> 改为
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v8.0\WebApplications\Microsoft.WebApplication.targets"Condition="'$(Solutions.VSVersion)' == '8.0'" />
这种方法师兄声称曾经成功过,但是在我试了N次都表示失败。不得已,我只能重建一个VS2005的工程,这就是我想说的方法2.
方法2
根据需要新建一个05工程,dll或者console application 之类的,然后再把VS10中的头文件和源文件都导进来。对于一般的控制台应用程序,这样就可以了,要注意的是工程的设置要和以前保持一致。我要用的是dll,调试中我遇到一些问题,总结如下:
1.由于源文件既包含.cpp 又包含.c ,并且使用了预编译头文件。在设置的时候,对.c文件都右键—属性—C/C++—调试—预编译头——设置为不使用预编译头。对.cpp文件,如果该文件没有include stdafx.h ,那同样设置为不使用预编译头,如果有include stdafx.h ,就设置为使用预编译头。需要强调的是,stdafx.cpp 文件要设置为创建预编译头。
2.dll文件的def文件一定要加到工程中,并且在工程设置—链接器—输入—模块定义文件中添加def文件的路径。如果没有这个步骤,调用dll中的函数时会不执行。