Visual c++资源文件符号

Visual c++ resource files symbols

本文关键字:符号 源文件 资源 c++ Visual      更新时间:2023-10-16

我对Visual Studio(2013)资源文件有点困惑。我在我的项目中添加了一个新的位图,它有自己的符号IDB_BITMAP1,尽管我不知道如何在MAKENTRESOURCE宏中使用它。我必须使用它的号码id,101。我用记事本打开了resource.h文件,但没有#define指令。我是必须手动为我的资源文件添加常量,还是VS自动为我添加常量,而我只是错过了一些东西?

这是一种典型的方法:

头文件:

// resources.h
#ifndef _RESOURCES_H
#define _RESOURCES_H
#define IDB_BITMAP1 101
#endif

资源文件:

// resources.o
IDB_BITMAP1 BITMAP DISCARDABLE ".myPic.bmp"

源代码:

// other_file.cpp
#include "resources.h"
HBITMAP hBitmap = (HBITMAP) LoadImage(
    hInstance,
    MAKEINTRESOURCE(IDB_BITMAP1),
    IMAGE_BITMAP,
    0,
    0,
    LR_LOADFROMFILE);

不要忘记通过释放内存

DeleteObject(hBitmap);

当位图不再使用时。

实际上我现在意识到,添加文件不会修改resource.h文件。我必须包含它,在MAKENTRESOURCE中使用文件的id,只需点击编译按钮,它就可以工作了。