编译环境:VC6.0。现在有一个程序在自己的电脑上可以成功运行,可在别人电脑上就不行。原因是我的C:\WINDOWS\system32下具有mfc42d.dll这个文件。现在已经有一种解决方法:上网找到mfc42d.dll文件,下载,放到C:\WINDOWS\system32文件夹下。我在百度白科上找到这样一种说法:  一、用户:
  a、去找个MFC42.DLL 拷贝过去
  二、开发者:
  a、选择菜单build->Set Active Configuration,然后选择Release,
  b、选择菜单project->settings,在General选项卡里第一项选择Use MFC in a static Library,即静态连接
  注:其实这就是生成了发布版程序,在Release目录下,可执行文件不会用到那两个讨厌的dll文件,一般到别的机器上都能用.我用的是汉化VC6.0,请问我如何能得到Release版的EXE程序?尝试好多次Release目录下仍然没有生成可执行文件。

解决方案 »

  1.   

    生成release的方法简单:在projects菜单中选set Active configurations,会弹出一个对话框,选中release版就行了.
    不过这个方法对你的问题没有用的,因为release与debug版的区别是将debug中的调试信息去掉了,得到的EXE文件更小而已,并不能解决运行程序的机器中没有MFC的DLL的问题.解决的办法只能是用静态连接的方法.另外楼主以为静态连接MFC和生成release版程序是一回事,其实不一样的.静态连接是将MFC中的代码连接到EXE中去,得到的EXE会变大,所以它不用DLL支持.release版是将调试信息去掉.
      

  2.   

    谢谢楼上的,在 组建 ---批组建 里,我主动要求编译只生成release版本。去release目录下运行release的版本是OK的。可是直接在编译器中点运行还是运行的是debug版本,还是出错。、另外,你说的这个方法我在网上也查到了,可是对中文版本并不管用,设置无效,设置后再点进去设置根本没有改变。
      

  3.   

    所谓的VC中文版其实是英文汉化的,不过是汉化了一下菜单而已,应该用法是一样的。你的问题是别人的系统中没有MFC DLL,这一点上与debug还是release版本无关的。所以你先要弄清楚出错的原因。