我发现很多执行文件都很小,只有200~300K,而且可以在未安装vc环境下运行,但是我编写的程序,采用了静态连接DLL后,执行文件特别大,2~3M,怎么才能将执行文件减小啊!!

解决方案 »

  1.   

    使用release版本,别用debug版本.
      

  2.   

    debug 版本可以在程序中调试,而release版本不能。
    debug 版本包含很多调试信息。
      

  3.   

    两者的区别还有:
    在Debug版本里,新定义的变量单元其值是不确定的,通常需要手动去初始赋值。
    而在Release版本里,刚定义的新变量单元,系统是会自动初始化该内存单元的,一般会将其置为安全默认值 0(NULL).所以有可能利用Release版本的特性,省去一些变量单元人工初始化编写的工作量.
      

  4.   

    在编译时可以采用 代码量最小 优化选项;在link时,可以使用/nodefault选项,自己指定lib文件,避免crt代码放到动态库中;使用/align:4096减少段的开销。其实这样做也减少不了太多的量,还是使用upx压缩把。