请教关于加载DLL中图片资源的问题?

clxye 2011-09-14 02:13:16
我有一个dll文件,里面有个位图资源:IDB_CAMERA,rc文件中定义如下:
IDB_CAMERA BITMAP "res\\CameraDevice.bmp"

我在应用程序中想获取此位图:
IDB_CAMERA在resource.h中定义为8005
m_vecDevice[i].hImage = LoadBitmap( hInstance, MAKEINTRESOURCE(8005) );

这样是没问题,但是如果dll中IDB_CAMERA的值发生了改变(例如变为8006),则上面的代码会产生问题。
我想使用IDB_CAMERA,但是此标示只在dll中定义,在我调用dll的工程中是没有定义这个标示的。

请问有没有什么好的办法?

谢谢!!!
...全文
91 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
clxye 2011-09-14
  • 打赏
  • 举报
回复
chinatcp正解,只是没有把细节说清楚。
懂得看了能明白,不懂得看了也还是不懂,后来自己找到答案了。

谢谢各位!
罗平 2011-09-14
  • 打赏
  • 举报
回复
最好办法是通过名称的方式来访问

rc文件定义如下:
CAMERA_bmp BITMAP "D:\\CAMERA.bmp"

访问:
hBitmap=LoadBitmap(hModule,L"CAMERA_bmp");
zhanshen2891 2011-09-14
  • 打赏
  • 举报
回复
你的dll和你的exe不在一起么??如果在一起你可以直接include它啊

如果不在一起你就让dll提供一个获取id的接口
element_cn 2011-09-14
  • 打赏
  • 举报
回复
写个导出bmp的接口不行吗

2,586

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 资源
社区管理员
  • 资源
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧