使用资源文件编译C++时出错

Error During C++ Compilation With Resource Files

本文关键字:C++ 出错 编译 源文件 资源      更新时间:2023-10-16

好吧,所以我创建了一个运行良好的C++Win32程序。然后我想使用一个自定义图标,所以我创建了一个"resource.h"文件和一个"resource.rc"文件,并在我的C++源文件中#include’d了它们。然而,在编译时,第3行出现以下错误:

数字常量之前应为不合格id

我做错了什么?我忘了什么吗?

我的资源.h文件:

#define IDI_MYICON 201

我的resource.rc文件:

#include "resource.h"
IDI_MYICON ICON "star.ico"

最后是我的C++Win32文件的前三行(有问题的):

#include <windows.h>
#include "resource.h"
#include "resource.rc"

您不应该将.rc文件包括在源代码中,而应该将.h文件包括在内。您应该使用开发环境的资源编译器将.rc文件单独编译为.res文件,然后将.res文件链接到最终可执行文件中。

您不会将.RC文件包含到C++文件中。您可以使用RC.EXE(资源编译器)对它们进行编译。这将生成一个.RES文件,该文件与其他.OBJ文件一起提供给链接器。