挖井

类库大魔王的挖井日记

挖一口属于自己的井


让VC7.1编译DLL时不连接C运行时库

  照着写单机的榜单,突然发现从某个修改开始,总是会把C运行时库也连接进来,真麻烦,仔细看看自己的代码,实在没必要拖个DLL呀,何况VC7.1的C库是msvcrt71.dll,是不由Windows携带的,所以要发布这个榜单的同时,就要背负需要同时发布这个dll的负担。在工程属性中把可能想到的所有的编译选项都关掉了,用depends看还是连接进来了。仔细想想,应该跟代码有关系。因为把我的代码贴到其它以前编译过不用连接C库的工程里,最后也会有C库被连接进来的。于是心一狠,在工程属性中设置连接时强制不连接C库,看它最后有什么提示。可以看到有浮点数的应用,就要求连接C库了。刚好这时浮点数的应用很简单,可以转换为整形的计算。然后再编译连接,发现是有要连接另外2个函数了,看看函数名,猜想大概跟程序运行安全相关,再到工程属性中把异常和缓冲区检测都关掉,果然可以编译连接通过了。再一步步试,最后发现是因为打开了缓冲区检测,每当程序中用到了数组的操作,就会有连接C库中的一些函数的要求。
  终于搞定!

本文地址:

https://minidump.info/blog/2007/01/e8-ae-a9vc7-1-e7-bc-96-e8-af-91dll-e6-97-b6-e4-b8-8d-e8-bf-9e-e6-8e-a5c-e8-bf-90-e8-a1-8c-e6-97-b6-e5-ba-93/

感觉本文不错,不妨小额鼓励我一下!
如果你有Visa、MasterCard之类的国际银行卡,也可以考虑以下选项:
上一篇

breaking霹雳舞(1)

  没有艺术细胞呀,四肢僵硬呀,肥肉丛生呀!  摇滚步,战斗舞,排腿,结束动作,hoho~~~…

Execise Outdoor 全文阅读
下一篇

VC命令行

  用VC7.1写榜单,榜单一般就是一个cpp文件就搞定了。因为有很多个榜单,所以一个一个建工程似乎稍微麻烦了点,后来想想用make能搞定不,可是我又不熟悉make,只好看看能不能写个批处理文件,用命令行来解决。看了一下LUA发布包里的编译用的批处理文件,再看看IDE里的工程属性,照着写了一个...…

Software 全文阅读