Visual Studio 2022 MFC静态库位图加载失败求助
MFC静态库位图加载失败排查求助
我折腾了半天加载位图,操作步骤都按规范来,但始终加载失败。当前环境是Visual Studio 2022,构建的是静态MFC库,解决方案里其他项目加载位图完全正常,这个项目之前没用到过位图资源。
现有配置与代码
RC文件中的位图资源定义
IDB_BITMAP1 BITMAP "C:\\ProgrammingProjects\\logix-designer\\RSLogix5000\\GUI\\DSI\\nodeExpanded.bmp"
资源ID定义(PVGridResources.h)
#define IDB_BITMAP1 16000
加载尝试的代码
一开始在类的构造函数里调用LoadBitmap(),返回值是0,说明加载失败但没给出具体原因。后来我单独写了LoadTheBitmap()方法,在对象构造完成后调用,用最底层的API尝试加载:
void CPVTreeCtrlButton::LoadTheBitmap() { HINSTANCE hResources = AfxGetResourceHandle(); HBITMAP bitmapHandle = ::LoadBitmap(hResources, MAKEINTRESOURCE(IDB_BITMAP1)); }
已确认的情况
hResources不为空,AfxGetResourceHandle()调用成功bitmapHandle返回0,位图加载依旧失败- 位图文件路径是VS自动生成的,我没改过,文件确实存在
想问的问题
还有哪些排查方向可以尝试?需要我提供哪些额外信息来定位问题?
内容的提问来源于stack exchange,提问作者ROBERT RICHARDSON
相关产品推荐
相关产品推荐

