无法在VS 2015中打开资源文件:无法打开包含文件afxres.h

时间:2016-02-16 15:35:32

标签: visual-studio-2015

我使用自动转换工具将我的VS 2012项目转换为VS 2015。当我尝试加载资源文件(.rc)时,它失败并显示以下错误:

致命错误RC1015:无法打开包含文件afxres.h

有什么想法吗?

3 个答案:

答案 0 :(得分:15)

我在使用MFC生成的Visual Studio 2010的控制台应用程序中遇到了同样的问题。

一种解决方案是修改Visual Studio 2015的安装以包含MFC。默认情况下不会安装MFC,因为它的大小。但在我看来,只有在您使用MFC的应用程序时才应用此选项。

如果MFC只需要afxres.h,则可以替换

#include "afxres.h"
[...]
"#include ""afxres.h""\r\n"

#include "WinResrc.h"
[...]
"#include ""WinResrc.h""\r\n"

您可能需要添加(但在编​​译资源时会看到)。

#define IDC_STATIC -1
[...]
"#define IDC_STATIC -1""\r\n"

正如您在rc文件中看到的,其中一个部分是TEXTINCLUDE。当Visual Studio的资源编辑器打开rc文件并将其保存回光盘时,需要执行此部分并将文本放入标有“从TEXTINCLUDE [...]生成的”。因此,请注意更改至少TEXTINCLUDE部分的两个位置,以便资源编辑器可以完成剩下的工作。

答案 1 :(得分:2)

汤森路透网站上的{p> This answer为我工作。为其他用户添加:

  

您可能需要修改Visual Studio 2015安装程序并添加MFC。

     

请关闭VS2015并转到控制面板 - >程序和功能 - > Microsoft Visual Studio - >改变 - >修改 - >添加Microsoft基础类

     

见下图:

enter image description here

答案 2 :(得分:1)

我使用的是VS 2017,不需要安装MFC。您可以改为将标题更改为#include "winres.h"#if定义还有其他小的变化,因此我强烈建议您创建一个新的.rc资源文件,并进行A / B比较以查看差异(不多)。我只是将旧的与新的进行了比较,并迁移了差异。