怎么会这样??? 选择静态编译Project->settings->General->Microsoft Fundation Classes 选择 Use MFC in a Static Libaray 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 lumg绝对是新手。一个程序的运行依赖于一些dll是很正常的,而且几乎每个windows程序都是这样,windows本生的一些dll文件就是为应用程序服务的。不过你的情况是这样的,VC的程序可以编译为两个版本:release和debug。每个版本各有一套dll和lib(参见DragonCheng的答复).release是发行版,不带调试信息。debug是调试版,带调试信息。开发的过程中使用debug版调试,完成后编译为release版去掉调试信息。对于dll(动态连接)或lib(静态连接)你可以任选,一般原则是:程序很小就使用静态连接,程序较大就使用动态连接。 ad,你懂不懂,不懂就不要瞎说!区别:debug版:有调试信息.release版:无调试信息.动态连接:不可在未安装VC的机子上运行,编译时快,因为没有把库编译进去.静态连接:可在未安装VC的机子上运行,编译时慢,把库编译进去了.一般的原则是:编程序时用debug版动态连接,都编好后发布时再用release版静态连接.ad说的不对,不要听它的. GreenStuff才真正不懂,俨然未入门。谁说动态连接的程序不能在未安装VC的机子上运行?只要将程序用到的DLL拷入目标机的windows\system目录就行了。如果你用installshield做安装程序,它可以帮你做到这一点,免得安装者手工操作拷贝过程。关于快慢问题,GreenStuff说得不对,静态连接因为连入EXE文件的内容多,在连接时固然会慢一点,但并不显著,你几乎没感觉。至于编译过程,根本就没区别。注意,编译和连接是两个过程。快慢的问题体现在程序运行时,因为debug版包含大量调试信息,所以运行速度慢,这在程序处理重任务时与release版会有天壤之别。GreenStuff的原则是不正确的,不过我的release版都用静态连接,因为我不想将DLL加入我的安装程序中,虽然动态连接可使exe较小,但加上DLL会占用更多的磁盘空间,如果做成安装软盘,当然希望能少用一张盘。 to ad:你说得太好了,太详细了,我想请问你在VB6中有没有办法去掉MSVBVM60.DLL? 求助软键盘开发,可支持中文输入! 3dmax导出3ds文件纹理不正确问题 奇怪:NAT 端口映射问题。 CListView如何设置滚动条 在广州工作的朋友请留下QQ or MSN 因工作需要从Delphi跳到VC++上,可我一点不懂C++,谁给我一些方法? 怎么样才能使用Dll中的类,我一定给分!!! 请教真正的高手!我在CScrollView的OnDraw()中绘的曲线为什么断断续续?(cqfriend) 为什么要配置数据源? GetFileVersionInfoSize函数如何用? 怎样运行COM示例 在VC中可以使用inp和outp两个函数吗?
VC的程序可以编译为两个版本:release和debug。每个版本各有一套dll和lib(参见DragonCheng的答复).release是发行版,不带调试信息。debug是调试版,带调试信息。开发的过程中使用debug版调试,完成后编译为release版去掉调试信息。对于dll(动态连接)或lib(静态连接)你可以任选,一般原则是:程序很小就使用静态连接,程序较大就使用动态连接。
debug版:有调试信息.
release版:无调试信息.动态连接:不可在未安装VC的机子上运行,编译时快,因为没有把库编译进去.
静态连接:可在未安装VC的机子上运行,编译时慢,把库编译进去了.一般的原则是:编程序时用debug版动态连接,都编好后发布时再用release版静态连接.ad说的不对,不要听它的.
谁说动态连接的程序不能在未安装VC的机子上运行?只要将程序用到的DLL拷入目标机的windows\system目录就行了。如果你用installshield做安装程序,它可以帮你做到这一点,免得安装者手工操作拷贝过程。
关于快慢问题,GreenStuff说得不对,静态连接因为连入EXE文件的内容多,在连接时固然会慢一点,但并不显著,你几乎没感觉。至于编译过程,根本就没区别。注意,编译和连接是两个过程。快慢的问题体现在程序运行时,因为debug版包含大量调试信息,所以运行速度慢,这在程序处理重任务时与release版会有天壤之别。
GreenStuff的原则是不正确的,不过我的release版都用静态连接,因为我不想将DLL加入我的安装程序中,虽然动态连接可使exe较小,但加上DLL会占用更多的磁盘空间,如果做成安装软盘,当然希望能少用一张盘。
你说得太好了,太详细了,我想请问你在VB6中有没有办法去掉MSVBVM60.DLL?