博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
应用程序正常初始化(0xc015002)失败解决方法
阅读量:5221 次
发布时间:2019-06-14

本文共 1310 字,大约阅读时间需要 4 分钟。

VS2005 sidebyside manifest error Microsoft.VC80.MFC Microsoft.VC80.CRT Microsoft.VC80.MFCLOC msvcr80.dll mfc80.dll eventlog VC2005 编译出来的程序文件,採用了manifest方式来指定dll文件。对于win98、win2000系统,把exe文件和VC的 dll连接库放到一起就 成了。对于winxp、win2003系统就要麻烦的多了,VC的连接库默认是被放到了winsxs文件夹下,结果造成在这些系统上,直接拷贝exe文件, 往往是不能执行(找不到msvcr80.dll、mfc80.dll文件等),或者在事件日志中报错。 解决方案: 方式一、在目标系统上安装2005版vcredist_x86.exe。 方式二、直接拷贝VS8文件夹下的VC / redist / x86 / 文件夹下的 Microsoft.VC80.MFC、Microsoft.VC80.CRT、Microsoft.VC80.MFCLOC几个文件夹,到exe所在的文件夹下,文件夹结构例如以下: ./myapp.exe ./myapp.dll ./Microsoft.VC80.CRT/ ./Microsoft.VC80.MFC/ ./Microsoft.VC80.MFC/Microsoft.VC80.MFCLOC/ 然后改动Microsoft.VC80.MFCLOC文件夹下的Microsoft.VC80.MFCLOC.manifest文件,将当中的version=“8.0.50727.42“,改动为version=“8.0.50608.0“。 方式二的文件夹结构,在xp和2003下是没有问题的,可是在win98/win2000中,由于exe和dll不在同一文件夹下,就会出现找不到dll的问题。 有什么更好的解决呢?呵呵,国外的一个大牛(http://blog.kalmbachnet.de)找到一绝招: 方式三、 1、首先编译myapp.exe的时候,在配置中,选择生成单独的manifest文件,如:myapp.exe.manifest。 2、将myapp.exe、myapp.exe.manifest复制到一个文件夹下 3、将Microsoft.VC80.MFC、Microsoft.VC80.CRT、Microsoft.VC80.MFCLOC几个文件夹下的文件,都复制到myapp.exe所在的文件夹下。 4、将Microsoft.VC80.MFCLOC.manifest文件里的version=“8.0.50727.42“,改动为version=“8.0.50608.0“。 5、编辑myapp.exe文件夹下的全部 .manifest文件,将文件里的publicKey键值删除,通常是publicKeyToken=“1fc8b3b9a1e18e3b“ 6、然后执行myapp.exe看看。

转载于:https://www.cnblogs.com/mengfanrong/p/4023746.html

你可能感兴趣的文章
jquery cache data
查看>>
hdu5723 多校第一题,longlong
查看>>
[转]三维数字地球发布平台探索--几款开源软件介绍
查看>>
[转]地图投影的N种姿势
查看>>
mysql小技巧
查看>>
使用FileReader()预览图片
查看>>
htop详解
查看>>
数据库隔离级 ( Isolation level )
查看>>
每日一问:谈谈 SharedPreferences 的 apply() 和 commit()
查看>>
[SQLServer大对象]——FileTable从文件系统迁移文件
查看>>
String.format
查看>>
cookie and Session
查看>>
asp.net core 使用 StaticFiles 中间件 (不完整翻译)
查看>>
SQL Server数据库操作(二)
查看>>
java数组转json
查看>>
UML之关系
查看>>
Google开源C++单元测试框架Google Test【转】
查看>>
JavaScript------去掉Array中重复值
查看>>
-垂直(水平)导航栏--转换-过度-动画-多列-瀑布流-事件
查看>>
第八次作业
查看>>