VC动态链接库的使用

EeTsang 2011-04-15 05:52:29
我写了个程序,程序界面装载了很多位图,程序体积比较大,6M多了,用的MFC,我还需要继续编写,但是这次位图更加大,请问能不能把位图放到DLL里面以便在用户需要代开模块时加载呢?如何做?大致介绍下。谢谢!
...全文
621 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
向立天 2011-04-18
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 eetsang 的回复:]

编译的时候,VC会把位图和主程序捆绑到一起,体积很大,能不能放到程序目录下读取加载??
[/Quote]可以呀
zuoguodang 2011-04-16
  • 打赏
  • 举报
回复
如果你不考虑效率就把文件放到dll中或程序目录中
EeTsang 2011-04-16
  • 打赏
  • 举报
回复
这个我是用的先建立一个对象,然后用LoadBitmap的 可是VC编译后是一个主程序呀!位图和主程序捆绑在一起的,体积很大
King_hhuang 2011-04-16
  • 打赏
  • 举报
回复
当然可以
LoadBitmap
EeTsang 2011-04-16
  • 打赏
  • 举报
回复
编译的时候,VC会把位图和主程序捆绑到一起,体积很大,能不能放到程序目录下读取加载??
TandyT 2011-04-16
  • 打赏
  • 举报
回复
把资源放到 DLL 中吧,就像系统 的 文件夹图标,都是放到 DLL 里面的,有几十兆大小
向立天 2011-04-16
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 eetsang 的回复:]

主要是看人家写的程序,主程序很小,里面有很多DLL,我想是不是放置到DLL中了。
[/Quote]别人写的程序的那些dll是不同的功能函数库
很少有资源
EeTsang 2011-04-16
  • 打赏
  • 举报
回复
主要是看人家写的程序,主程序很小,里面有很多DLL,我想是不是放置到DLL中了。

向立天 2011-04-16
  • 打赏
  • 举报
回复
这种问题应该从两个方面着手解决
首先看看有些位图是不是可以通过实时绘制的方式实现而不需要存储图片文件
然后再将那些必须通过文件形式存在的位图看看是不是可以分解,游戏部分可以缩放来适应而减小体积
这才是从根本上解决空间的问题
当然后图片资源是可以放到一个纯资源dll中分离存储的
EeTsang 2011-04-16
  • 打赏
  • 举报
回复
介绍一下怎么做?另外,由于界面要贴图,而且在图片指定位置放置按钮等控件,怎么能快速放到合适位置,我每次都是慢慢调的。要很多次才能准确、
King_hhuang 2011-04-16
  • 打赏
  • 举报
回复
不好意思,动态加载图片要用LoadImage

LoadBitmap() 和 CBitmap::LoadBitmap() 都不可以从文件加载位图的。只有用LoadImage()从文件加载位图,再用CBitmap::FromHandle( HBITMAP bmp )就可以把位图放到CBitmap对象中了。
sinfee 2011-04-15
  • 打赏
  • 举报
回复
如果有很多位图,而且比较大,建议放在程序外面某个目录中,放在资源里个人感觉太大影响效率
cjwell 2011-04-15
  • 打赏
  • 举报
回复
DLL中放的是资源的路径,资源还是放在外面的
Eleven 2011-04-15
  • 打赏
  • 举报
回复
可以将资源文件放到DLL中~一般也推荐这么做~
蒙飞鸿 2011-04-15
  • 打赏
  • 举报
回复
搜索“资源 DLL”,而且好象DLL做成WIN32 DLL而非MFC DLL会好点。

15,471

社区成员

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

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