vb6与vc6生成的exe文件大小比较的困惑?
我用mfc向导生成一个基于对话框的项目,其实就是一个对话框窗口,我加上两个按钮,编译成exe文件后,约100多K,
我同样用vb6,做一个窗体,也是加上两个按钮,然后编译生成exe文件,发现这个文件才16K,为什么差别这么大呢?
同样一个窗体,同样多的控件,但是体积相差近10倍,我确实不明白。
按理说,vc6生成的exe应该经vb6小呀。但是为何却大呢?大家可以试一下,给大家给点指教,道理何在?

解决方案 »

  1.   

    debug版本,自动添加调试信息
    编译成发布版,会小很多
      

  2.   

    你这样比大小是不公平的。vc程序静态的带上了mfc的动态链接库,就跟 vb 依赖 msvbvm.dll 等一样,这些动态链接库系统自带的,只是怕版本不同出问题,所以一般都静态编译进程序了,可以在工程选项里面选择"共享库中使用mfc"
      

  3.   

    VB 程序小是因为没有带上 msvbvm.dll 等链接库,要不在其他系统上运行时经常提示少这个dll,少那个ocx 的
      

  4.   

    用release编译后,确实体积小很多,从105k变成20k,但是还是比vb6的exe文件大,vb6生成的exe只有16k,这里面的原因估计就是vb6要依赖于vb运行库的原因吧。
    但是还是有疑问,多出来的4k难道就是mfc的静态库吗?不会这么小吧。20k的exe程序真是会带着静态库吗?
      

  5.   

    那你做个win32的程序出来比较~
      

  6.   

    默认是在共享中使用MFC的,而不是静态