设为首页
收藏本站
登录
注册
找回密码
开启辅助访问
商业用户中心
购物车有
0
件商品
切换到宽版
请
登录
后使用快捷导航
没有帐号?
注册
快捷导航
商城
WeiShop主入口
论坛
BBS
搜索
搜索
本版
帖子
用户
云外归鸟工作室网站
»
论坛
›
编程讨论
›
黑月交流版
›
黑月1.72 DLL 编译是否也使用黑月的Bootloader ...
返回列表
查看:
3340
|
回复:
6
[求助]
黑月1.72 DLL 编译是否也使用黑月的Bootloader
[复制链接]
yefeili1690
yefeili1690
当前离线
积分
10561
电梯直达
楼主
发表于 2011-1-18 12:47:02
|
只看该作者
|
倒序浏览
|
阅读模式
使用 1.72 编译DLL,明显感觉编译后的文件比 1.61 大45K左右,使用大鸟的
[link]
opt=/ENTRY:BMEntrypoint /nodefaultlib
IBCMT /DEFAULTLIB:MSVCRT
会出现一大堆 unresolved external symbol
是否需要指定其他的链接开关哪?
收藏
0
支持
0
反对
0
回复
使用道具
举报
云外归鸟
云外归鸟
当前离线
积分
1617
沙发
发表于 2011-1-19 00:41:16
|
只看该作者
从黑月诞生的那一天起,DLL一直都是用VC++6.0的LOADER,所以黑月DLL很少误报的
你用这个链接参数是不能用在DLL程序,只能用在EXE程序
回复
支持
反对
使用道具
举报
yefeili1690
yefeili1690
当前离线
积分
10561
板凳
楼主
|
发表于 2011-1-19 12:53:16
|
只看该作者
大鸟神速。我的理解是:体积变大无非是链接进去的东西多了,从链接的结果看,1.61 的 DLL 体积确实要小很多,方才请教是否1.72版 EXE Loader 也被链接进 DLL中了,呵呵
回复
支持
反对
使用道具
举报
云外归鸟
云外归鸟
当前离线
积分
1617
地板
发表于 2011-1-21 14:28:57
|
只看该作者
本帖最后由 云外归鸟 于 2011-1-21 14:33 编辑
还是选择静态库版的问题
/nodefaultlib
:
LIBCMT /DEFAULTLIB:MSVCRT
这两个参数就是选LIBCMT,还是MSVCRT,一般MSVCRT版本的DLL会比较小,因为一些C函数是从MSVCRT.DLL调用的,不编译代码进DLL,但如果固定用MSVCRT版本,一些支持库的静态库就会编译失败.
编译DLL就不用要用opt=/ENTRY:BMEntrypoint 这个参数了,这个是选择入口函数,DLL的入口函数是固定的.
回复
支持
反对
使用道具
举报
阿杰
阿杰
当前离线
积分
422
5
#
发表于 2011-2-14 08:06:24
|
只看该作者
希望在黑月设置中加个参数选项,选LIBCMT,还是MSVCRT
回复
支持
反对
使用道具
举报
hmy100
hmy100
当前离线
积分
42
6
#
发表于 2011-2-27 14:38:58
|
只看该作者
这个必须的顶。。。连接参数我不明白。。。也没有相应的教程说明。。。如果能出一个文字说明简单的。或者弄个选择项什么的。
回复
支持
反对
使用道具
举报
云外归鸟
云外归鸟
当前离线
积分
1617
7
#
发表于 2011-2-28 14:43:14
|
只看该作者
阿杰 发表于 2011-2-14 08:06
希望在黑月设置中加个参数选项,选LIBCMT,还是MSVCRT
非MFC类的DLL固定是用MSVCRT的
这没什么可选的
回复
支持
反对
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖后跳转到最后一页
快速回复
返回顶部
返回列表