最近发现茶馆很热闹啊? 问题解决两个了,你们都是技术高手,剩下的问题,谁知道的教教我啊? 修改函数入口后(main),怎么编译?(用宏跟不用没啥区别, 预处理的时候就给替换了.) 我看了def模块定义文件的语法了, 如果是想在编译链接的时候合并一些section,该怎么写啊? 网上关于bcb的资料太少了, 都搜不到有有关的资料,谁知道怎么解决的,教教我吧。
[quote=引用 1 楼 ooolinux的回复:]工程选项里有debug和release的设置。 修改了默认函数入口,什么意思? 连接外部DOS程序,什么意思?
直接编译呀,指定入口点这功能本来就没啥用,不管main、WinMain、DllMain之类的都是语言约定的名字,编译后只是一个地址,Delphi中的主函数干脆就是无名的,省了这个烦恼。 #define main1 (main) // 指定程序开始于main1 int main1() { // ... } int main2() { // ... } 和链接时用/entry:main1难道不是一回事,后者唯一的优点是不需要改源程序。 合并section只需要指定同样的classname即可: sections xxx 'code' yyy 'code' code可以是随便起的任意名字
还没有发现CB的连接器有类似ms link的/entry修改入口点功能,感觉这功能没啥用,非要的话,可以用宏实现: #define myfunc (main) 程序中不要有名叫main的函数即可 替换默认stub,没有直接的命令行参数,但是可以写个def文件,比如叫test.def: 内容: stub 'xxx' 然后命令行编译: bcc32 xxx.cpp -l test.def 64位: bcc64 xxx.cpp -Wl,test.def def文件可以设置很多生成参数,具体见:http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Module_Definition_Files
工程选项里有debug和release的设置。 修改了默认函数入口,什么意思? 连接外部DOS程序,什么意思?
552
社区成员
20,062
社区内容
加载中
试试用AI创作助手写篇文章吧