VC2005-"应用程序正常初始化失败"-0xc0150002

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情
最近几天被这个问题困惑了许久。 不禁感叹微软的东东真是越做越烂了,也终于明白了时隔12年大家仍然死守VC6的原因。。 

  用VC2005编译的程序,编译时没有任何错误,但是运行时就是提示“应用程序正常初始化失败”!! 查找了各方面资料,做了各种尝试,网上说什么的都有:有让安装vc2005 sp1补丁的;有让安装vcredist_x86.exe的; 有让把CRT库的dll直接拷贝到程序目录的; 有让清理注册表的;有让装.NetFramework新版本的;有让查manifest的; 

  结果我尝试了半天,几乎都是浪费时间。上面最后一条说的还算正确,只是作者把事情描述得太繁琐了。。现在把处理的方法说一下,省得大家再走弯路: 

  1. VC2003、VC2005、VC2008及其后续版本,对底层最基本的CRT、MFC、ATL库都进行了重构,为了避免不同版本的库引起冲突,重构后的库文件一般放在 C:\\windows\WinSxS 文件夹中,并用特定的文件夹\文件名称进行标识; 

  2. 与VC6不同, VC2003、VC2005、VC2008及其后续版本,引入了manifest清单的概念,即应用程序编译后会同时生成对应的.manifest文件,并将该.manifest文件作为资源编译到dll或者exe中去。.manifest文件实际上是一个XML格式的文本文件,里面记录了dll或exe中要引用的CRT、MFC、ATL库的版本和名称。VC6编译的应用程序对CRT、MFC、ATL的dll都是直接调用,而VC2003、VC2005、VC2008编译的程序都是先查询编译到资源中的manifest中的记录,然后按照记录提供的版本和名称去搜寻对应的CRT、MFC、ATL库以及随库发布的.manifest文件,搜寻的路径包括当前目录、C:\\windows\WinSxS 等等,如果没有找到对应的库文件,则提示“应用程序正常初始化失败”; 

  3.因此解决这个问题的办法就是:(a)用文本编辑器打开exe或dll对应的.manifest文件,查看它引用的CRT、MFC、ATL库的版本;或者,用UltraEdit直接打开exe或者dll,从资源区中找到编译进去的.manifest信息,找到它引用的CRT、MFC、ATL库的版本;或者,运行程序,当程序弹出“应用程序正常初始化失败”对话框时,在桌面上右键点击“我的电脑”-“管理”-“事件查看器”-“系统”,双击查看其中的记录,可以看到出错的原因是因为缺少了某某版本的CRT、MFC、ATL库,记录下这个版本信息;(b)记录到的库的版本信息一般类似于“Microsoft.VC90.DebugCRT”,之后到C:\\windows\WinSxS 或者VC200X的安装文件夹中搜索包含这个字符串的文件夹和文件,将搜索到的dll和.manifest文件都拷贝到应用程序所在的文件夹中,其中,.manifest文件必须重命名为“Microsoft.VC90.DebugCRT.manifest”(这里以Microsoft.VC90.DebugCRT为例),这样应用程序就可以正常运行了;(c)注意:库的.manifest文件和dll要一同拷贝到应用程序根目录去,因为应用程序会将编译到内部的manifest信息与外部的.manifest文件进行对比,之后才会对库的dll进行调用。如果只拷贝库的dll文件是没有用的; 

  4.如果本机编译和运行程序都ok,但是将编译好的程序拿到其它机器上确无法运行,则多半也是这个原因。另外,如果提示"应用程序配置不正确",大多也是因为上面所说的CRT、MFC、ATL库版本与应用程序不匹配导致的,可以如法炮制进行解决; 

  好了,就这些。。快过年了,祝everyone新年愉快。。 分享本身也是一种快乐。。
应用程序正常初始化0xc0150002失败 写了一个VC6下的MFC程序,结果拷贝到另一台机子上出现了应用程序正常初始化0xc0150002失败的问题。然后打开事件查看器, 找到了如下信息: 找不到附属汇编 Microsoft.VC80.DebugCRT,上一个错误是 参照的汇编没有安装在系统上。 Resolve Partial Assembly 为 Microsoft.VC80.DebugCRT 失败。 参考错误消息: 参照 阅读详情

相关推荐

VC6应用程序正常初始化0xc0150002失败的终极解决方案

    最近做一个项目写了一个VC6下的MFC程序,结果传到别人的机子上(WIN7)出现了应用程序正常初始化0xc0150002失败的问题,当时还以为就是WIN7的问题,后来把程序拷贝到一台WINXP SP3的程序下还是不行。    为什么我的机子上可以,而别人的机子上运行不了呢?    开始google一下,找到了解决的一个办法——在程序运行出错的时候,右键“我的电脑”,然后点击“管理”,再点击“事件查看器",最后看下“系统”,信息如下:    (1)找不到附属汇编 Microsoft.VC80.De

kuaixue1023的专栏 5590

应用程序正常初始化0xc0150002失败 解决 方法

应用程序正常初始化0xc0150002失败 解决 方法 下载运行即可!

无法正常启动,错误0xc0150002

应用程序无法正常启动0xc0150002 解决方案 vcp80d.dll,msvcr80d.dll我也遇到过此问题,解决办法: 方案一: 在项目的“属性|配置属性|链接器|常规”中的“启用增量链接”选择“否”。此方法阻断了问题产生的源头,其每次生成exe文件时都直接嵌入清单文件,而不是默认的根据时戳而决定是否更新清单文件。   方案二:不嵌入清单文件。在项目的“属性|配置属性|清单工具|输...

znlangel的博客 4246

一款占用内存小,速度超快的免安装浏览器,推荐使用!

不敢说gb是最好的浏览器,但是是我用着最顺手的。 ....-- taonnn 我就找了很多浏览器,一个一个试着使用。 最后我选择了GreenBrowser,因为我发现其他浏览器虽然都各有各的优点, 但GreenBrowser是综合素质最高的。最基本的易用性绝对是最好的,你要是用熟了GreenBrowser, 你会发现很多方便实用的功能或快捷键,没有一个浏览器比他全,至少都要缺几个。 而且他小巧只有600多K,免安装使用,纯绿色啊! ....-- lzgs GreenBrowser浏览器有很多使网游爱好者舒心的功能,是其他浏览器没有的,也是本人不愿舍弃GreenBrowser浏览器的重要原因。 例如: 1、状态栏的选择格式,我把**、星期、在线计时、空闲物理内存、已打开页面计数放置在页面,使用起自己的机器就很惬意,对机器状态一目了然。 2、无与伦比的强大而全面的搜索功能。在“工具栏”-“搜索”-“设置搜索引擎”可以随意设置自己喜欢的搜索工具。 3、“自动滚屏”功能,比较鼠标中键滚屏功能的速度更稳定。 很多功能需要使用者逐一体会。 ....-- xiexie 其实一般人用什么浏览器都够用了. 如果你是高手或者每天都要花大量时间挂在网上,推荐你使用 GreenBrowser. GB的按方向鼠标拖拽,搜索栏和状态栏是所有浏览器里面最强大的.强烈推荐. ....-- User 我是做互联网的,每天用浏览器接近10小时,我们部门的同事也是,当你的电脑开着PS DW 再开N个页面,开着WORD Excel foxmail QQ MSN BQQ再开个听歌的播放器的时候就知道有多痛苦了。我们部门10个人,一个用****的我一个用GB的其他都是**,每天到了下午机器慢的要死的时候,只有我的机器撑得住,时间长了同事都觉得有点奇怪,后来我给他们推荐GB,开始他们都不肯换,觉得**好用,因为大家都用过很多浏览器。 后来慢慢的10个人都换了GB..都觉得很赞,4个多月了,没一个人说过难用。... 所以我觉得 GB的推广做的不好,相比其他浏览器而言,知道GB的人真是太少了。 另外就是并不是GB不好用,而且自己没有设置好,刚用GB的时候需要设置很多东西,才能变的适合自己,很多人都没什么耐心,用两 天就开始骂娘... ....-- hilinfeng 就是因为**集成的搜索太少才用的gb,我自定义了10个搜索按钮,分别是百度、google、google(手气不错)、百度 (歌曲)、Sogua、华军软件、天空软件、金山词典、teein、百度贴吧,用着爽,一字排开十个按钮看着也爽! ....-- vlwow 最最最喜欢就是GB的搜索~ “其搜索方式丰富多样,而且设计多一针见血,不取向浮华,不刻意模仿,却着重在朴实和实 用上花足功夫。 ” 说得好。这话实在。 ....-- duskymagus 浏览器少说也试过二三十种了,用久了才知道gb的好处 ....-- sandro26 GB超级稳定的性能及较快的速度和较小的资源占用正是现在其他IE内核浏览器所欠缺的,也是我们最需要的,因此GB是最好的IE内核浏览器。 ....-- wjse 同样很喜欢GB!!喜欢她的纤细、喜欢她的自由制定 ....-- a__gu 我觉得GreenBrowser这个浏览器才是最易用的,最快的浏览器,大家试试啊。鼠标手势很全,搜索功能强大的掉渣! ....-- lilik GB是最好的浏览器,现在用不惯别的浏览器啊!GB做得实在是太人性化了! ....-- winxy 初次接触gb就喜欢上他了,随着日益的了解,更是越来越顺手,几乎离不开他了,gb-真的很人性化的浏览器。 ....-- zmg7852 用过、见过、听说过很多浏览器,全面地评价,还是觉得GB是最好用的浏览器!功能强大,使用方便,而且很多特色是其它浏览器没有的。GB并非完美,于是换用其它浏览器,用了一段时间之后,还是换回GB。界面朴实无华的GB虽然没有其它浏览器那么著名,有些网站公布的用户数量排名中,GB并不显眼,但是——它是最好的!用过几种浏览器才有这个体会!

应用程序正常初始化失败(0xc150002)失败。请单击“确定”,终止应用程序

从论文的作者主页上下载的源码vs2008写的,在我的vs

syy_1263041983的专栏 7280

应用程序正常初始化0xC0150002失败

VC 写的程序,在别的机器上运行,出现应用程序正常初始化失败0xC0150002 1,用depends.exe 查看,找到需要的dll,copy 到同目录下; 2,这时可能还不行,继续3、4、5 3,查看项目的mainfest 文件,注意其中描述的程序集版本; 4,进入c:\windows\winsxs\mainfest\ 目录,找到相应的.mainfest文件,copy 到同目录;

anyisoft的专栏 1452

应用程序无法正常启动(0xc0150002)

0xc0150002

天道酬勤 1万+

VC2005-"应用程序正常初始化失败"-0xc0150002(转载)

 <br />      最近几天被这个问题困惑了许久。 不禁感叹微软的东东真是越做越烂了,也终于明白了时隔12年大家仍然死守VC6的原因。。 <br /><br />  用VC2005编译的程序,编译时没有任何错误,但是运行时就是提示“应用程序正常初始化失败”!! 查找了各方面资料,做了各种尝试,网上说什么的都有:有让安装vc2005 sp1补丁的;有让安装vcredist_x86.exe的; 有让把CRT库的dll直接拷贝到程序目录的; 有让清理注册表的;有让装.NetFramework新版本的;有让查

lujianxin1098的专栏 1123

"vs2005调用vp2.2出现应用程序正常初始化0xc0150002)失败“的解决方法

这两天配制vega prime 2.2.1的vc编程环境实在是太痛苦了,一开始选用vs2003,各种链接错误,在网上搜了好久也没找到正确的解决方法,一狠心重新安装了vs2005,按照配制要求添加库文件和包含文件,终于编译成功了,但运行时又出现"应用程序正常初始化0xc0150002)失败"    这个错误,又是在网查了好多解决方法,终于解决了问题,需要为vs2005安装sp1补丁,注意

woaisia的专栏 1184

VC-"应用程序正常初始化失败"-0xc0150002

VC-"应用程序正常初始化失败"-0xc0150002 最近几天被这个问题困惑了许久。 不禁感叹微软的东东真是越做越烂了,也终于明白了时隔12年大家仍然死守VC6的原因。。    用VC2005/VC2008编译的程序,编译时没有任何错误,但是运行时就是提示“应用程序正常初始化失败”!! 查找了各方面资料,做了各种尝试,网上说什么的都有:有让安装vc2005 sp1补丁的;有让安装

wjeson的专栏 7262

应用程序无法正常启动0xc0150002 解决方案

我也遇到过此问题,解决办法: 方案一: 在项目的“属性|配置属性|链接器|常规”中的“启用增量链接”选择“否”。此方法阻断了问题产生的源头,其每次生成exe文件时都直接嵌入清单文件,而不是默认的根据时戳而决定是否更新清单文件。 方案二:不嵌入清单文件。在项目的“属性|配置属性|清单工具|输入和输出”中的“嵌入清单”选择“否”,从而在生成exe文件时附随生成一个清单文件(默认情况下,其文

梦想庚远 5320
上一篇: 导出表中数据的SQL脚本形式
下一篇: CreateThread、_beginthreadex和AfxBeginThread
wzsy
博客等级 码龄22年 173粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值