用MFC编译,生成的一个普通程序,在没装VC的电脑上他无法运行(系统提示找不到一些文件)。在写VC时应该作些什么才能让它不依赖与VC也可运行?

解决方案 »

  1.   

    1.静态链接你做的程序
    2.用installshield打包安装
      

  2.   

    1. 使用Release编译
    2. 有没有用到额外的控件
      

  3.   

    可以将程序做成连接MFC是静态的就可以了
    相应的设置如下
    project-->setting --> general 当中选择use mfc in a static library
    再编译一下,就可以了只是文件比较大一些,其它的都没有什么了
      

  4.   

    在工程中,打开"project"菜单,在Genral选项卡中将Microsoft Foduntion Classes;设置为use mfc in a static libary,然后重新编译,即可!如果你程序中用到了其他dll,你也需要类似的在link选项卡中指定对应的lib库,进行静态链接,这样程序就可以在没有装vc的环境下运行了1
      

  5.   

    具体还看你是用什么方法来做程序,MFC还是CONSOLE等,但你必须用RELEASE方式编译程序
      

  6.   

    如果没用到其它外来控件,也没有别的dll,
    在编译的时候在工程里面设置了“在静态中使用MFC”就可以了
      

  7.   

    project-->setting --> general 当中选择use mfc in a static library
      

  8.   

    除直接更改项目属性,还可以免除_AFXDLL宏,用#undef或直接删除系统预定义标记中的_AFXDLL
      

  9.   

    你是不是编译的Debug版呀?
    要用Release版的。
    在Debug版里有好多依赖于VC的调试信息,所以在没有装VC的机器上就不能运行了
      

  10.   

    用installshield打包安装就是一个好方法呀
    这么多人都已经告诉你用release版本了,去找本书都会告诉你怎么发布release版本以及它和debug版本的区别呀。让我们一起学习吧
      

  11.   

    谢谢诸位了。
    静态连接+Release编译都可以解决。