版块
论坛
喜欢
话题
应用
搜索
登录
注册
KungFu的个人空间
访问量
0
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=9505
求助:static libray or shared dll
基本情况:vc++6英文版,win2k中文版+sp4,mfc向导生成的一个dialog.问题:如果将project设置为use mfc in a shared dll后,用CWnd:Create(参数略)函数可以成功创建一个窗体并附在父窗体上,而如果设置为use mfc in a...
全文
回复
(
8
)
2004-05-31 11:52
来自版块 -
c/c++入门(VC,KeilC使用)
◆
◆
表情
告诉我的粉丝
提 交
Sundsea
:
steven__xu说得很不错!确实是这样,现在2K以上都把MFC42.DLL当然操作系统的一部分默认安装了!候捷的<<深入浅出MFC>>可能会给你答案,里面剖析过wnd:create()的整个调用过程!可能还得自己去好好想想才能有所解! 好,回去看一看!
(2004-08-27 00:18)
回复
dustfly
:
steven__xu说得很不错!确实是这样,现在2K以上都把MFC42.DLL当然操作系统的一部分默认安装了!候捷的<<深入浅出MFC>>可能会给你答案,里面剖析过wnd:create()的整个调用过程!可能还得自己去好好想想才能有所解!
(2004-08-26 23:44)
回复
Sundsea
:
简单的理由,如果MFC有bug,微软可以给MFC42.DLL打补丁,可是没法给静态连接MFC的程序打补丁。 稍微复杂的理由,MFC静态库对多线程支持不好。 更复杂的理由,你的程序主体部分用静态MFC,但是不能保证你引用的DLL不访问MFC动态库,说不定两者分配的资源就要打架了...
(2004-08-26 12:24)
回复
wowocock
:
MFC,嘿嘿,偶不会,只会用SDK的方式老牛拉破车,郁闷。。。。。。。
(2004-08-25 11:46)
回复
steven__xu
:
简单的理由,如果MFC有bug,微软可以给MFC42.DLL打补丁,可是没法给静态连接MFC的程序打补丁。 稍微复杂的理由,MFC静态库对多线程支持不好。 更复杂的理由,你的程序主体部分用静态MFC,但是不能保证你引用的DLL不访问MFC动态库,说不定两者分配的资源就要打架了...
(2004-08-25 11:34)
回复
Sundsea
:
如果没有绝对需要,不要用静态的MFC。 why?
(2004-08-24 17:12)
回复
steven__xu
:
如果没有绝对需要,不要用静态的MFC。
(2004-08-24 15:15)
回复
w8zz
:
好像MFC为了处理dlg的isDialogMessage 在内部作了一些处理,可能用static library时再跑dlg加Cwnd就有多线程句柄问题-------应该主要就是dlg和cwnd两个取message的部分有限制,所以得用share dll
(2004-06-07 17:35)
回复
KungFu
加关注
写私信
0
关注
0
粉丝
845
帖子
返回顶部