已经不是第一次出现这种错误了,之前release版本就遇到过,最近在debug版本上又出现了。
从网上找了不少资料,终于解决了这个问题,现记录下来以备查找。
release版本:
需要下载 VS 对应版本的再发行组件包进行安装。直接上微软的网站搜索“再发行”,选择版本下载,安装即可。
debug版本:
需要从 VS 的安装目录
D:/Program Files/Microsoft Visual Studio 9.0/VC/redist/Debug_NonRedist/x86
下面拷贝所有的dll到程序运行目录就可以了。
如果到了这一步,还是出错的话,就用记事本打开 Microsoft.VC90.DebugCRT.manifest
删掉以下内容
<assemblyIdentity type="win32" name="Microsoft.VC90.DebugMFC" version="9.0.30729.1" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
就以上两个方法,比网上五花八门的解决方法都好用。
--------------------
今天又碰到了这个问题,发现以上办法虽好,但是在某些情况下不现实,比如说:你写的程序提供给别人运行的时候,你不可能要求每个用户都去安装再发行组件包
于是深度Google了下,发现有办法解决。
如果你是软件用户,你可以用以上两个方法解决问题,如果你是软件开发者,为了避免出现问题,就可以这样:
项目-> 属性->常规->MFC的使用,选择"在静态库中使用mfc"
这样生成的文件体积会稍微变大,但是在其他机器上跑起来就不会有问题了。