Visual Studio 2008 Express MFC支持

时间:2008-09-27 02:27:46

标签: c++ visual-studio-2008 visual-studio-2005 mfc

正如许多人所知,Visual Studio 2008的Express版本不包括对MFC以及编译大量Windows程序所需的一些其他软件包的支持。

所以,这是我的问题:

我有Visual Studio 2005的完整版本。我一直在使用它来编译我的一个朋友正在处理的项目,以便我可以为他测试它并继续跟踪错误和事情。最近,他将该项目升级到VS 2008,我没有。所以,我下载了快递版本,希望我可以简单地用它编译,但没有运气,它抱怨左右边缺少标题。

在我看来,由于我已经拥有VS 2005的完整版本,因此我必须至少有一些(可能是较旧的)版本的文件,他的项目需要编译。

有没有办法可以说服VS 2008在2005年的目录中查看包含文件和库文件来编译?

此外,这是一个坏主意吗?我真的不想出去购买VS 2008,因为我自己永远不会用它。 (2005年我的工作做得很好,而且我倾向于更喜欢GCC。)

由于

8 个答案:

答案 0 :(得分:1)

您可以直接从命令行使用VC ++编译器,或者只是在Visual Studio 2005中创建一个具有源代码的新项目。除非他使用2008 / 2008sp1中新版本的MFC / ATL中提供的某些功能,你应该能够很好地编译项目。

请参阅Visual Studio 2005中的“从现有源创建项目”。不幸的是,他们没有将这些库包含在Express Edition中。

答案 1 :(得分:1)

使用Visual Studio 2005中的vcvars * .bat脚本。请参阅VC ++博客中的this blogpost以了解具体方法。您将使用旧的编译器,但使用Visual Studio 2008中的构建系统。

答案 2 :(得分:1)

您可以进入工具>选项>项目和解决方案> VC ++目录 并更改Include,Library和Source(以及可能参考?)文件夹以使用VC ++ 2005的文件夹。

我猜你只需用硬编码的VS 2005路径替换$(VCInstallDir)。在执行此操作之前,我会记录原始值。

但是,您刚刚尝试过使用OLD 2005 sln和vcproj文件吗?继续使用2005年版和2008年版本。为每个IDE保留两组这些文件。任何问题都与图书馆不匹配有关 - 你无法通过将2005年的工具与2005年的图书馆一起使用来避免。

答案 3 :(得分:1)

处理这个问题的简单方法是将解决方案和项目文件从源代码控制恢复到Visual Studio 2005状态(您正在使用源代码管理权限吗?)。此时,只要您的朋友不使用任何仅限mfc 9的函数,您就可以编译该项目。

答案 4 :(得分:1)

我要尝试的第一件事是通过修改.sln和.vcproj文件的版本在VS 2005中加载它。在.vcproj中,将版本从9.00更改为8.00,在.sln中将格式版本从10.00更改为9.00。

如果你在项目中没有花哨的东西,你很有可能像这样使用它。这也可以避免更新2个项目和解决方案文件。

答案 5 :(得分:1)

在此网站上显示如何使用Visual Studio Express版本编译MFC代码: link

答案 6 :(得分:0)

仅仅为了记录,我已经完成了(通过修改IDE内部的包含目录和库目录)并且它运行良好,我有MFC,ATL,一切。

答案 7 :(得分:0)