解决应用程序无法正常启动0xc0150002问题(转)
简述:使用VS2008写了一个MFC程序,结果传到别人的机子上(WIN7)出现应用程序正常初始化(0xc0150002)失败的问题。为什么我的机子上可以,而别人的机子上运行不了呢?下面是我找到的一个解决办法:

1、在程序运行出错的时候,右键“我的电脑”,然后点击“管理”→“事件查看器”→“Windows 日志”→“应用程序”,查看错误信息:

1> “E:\IPCam_share\ARP\數據處理\HgNetSdkDemo\Debug\DevMngrd.dll”的激活上下文生成失败。 找不到从属程序集Microsoft.VC90.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",
type="win32",version="9.0.21022.8"。请使用 sxstrace.exe 进行详细诊断。
可以判断是DevMngrd.dll等库文件加载的时候出现了问题,看了下它的manifest文件,其依赖库是Microsoft.VC90.DebugCRT,这样问题就很明显了,这个dll是在VS2008下编译的,而别人的机子没有这个环境,我们所编译生成的应用程序由于缺少必需的Debug版本的VC运行库而发生错误。
2> “E:\HgNetSdkDemo\Debug\HgDeviceFound.dll”的激活上下文生成失败。 找不到从属程序集Microsoft.VC90.DebugMFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",
type="win32",version="9.0.21022.8"。 请使用 sxstrace.exe 进行详细诊断。
可以判断是HgDeviceFound.dll等库文件加载的时候出现了问题,看了下它的manifest文件,其依赖库是Microsoft.VC90.DebugMFC
2、解决方法是:拷贝相应的VC库文件
1> 到自己机子上VS2008的安装目录下,把3个dll文件(msvcm90d.dll,msvcp90d.dll,msvcr90d.dll)和一个manifest文件(Microsoft.VC90.DebugCRT.manifest),拷贝到别人机子上的工程可执行目录下。
2> 到自己机子上VS2008的安装目录下,把4个dll文件(mfc90d.dll,mfc90ud.dll,mfcm90d.dll,mfcm90ud.dll)和一个manifest文件(Microsoft.VC90.DebugMFC.manifest),拷贝到别人机子上的工程可执行目录下,然后问题就解决了
另:如果是VS2005 ,则为xxx.VC80.XXX文件夹
3、发现问题时应如何做
1> 善用工具可以帮助定位问题:事件查看器,depends walker等
2> 网上搜索解决办法
3> 启动程序或注册文件时最好以管理员身份启动或注册
4> 安装包文件夹权限是否受限
5> 杀毒软件/防火墙是否禁掉
各位游客,觉得对你有帮助的就顶一下,欢迎指出错误,谢谢
————————————————
版权声明:本文为CSDN博主「hebbely」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/hebbely/article/details/54374979
PS:安装了
解决,需要的朋友留下你们的邮箱。
解决应用程序无法正常启动0xc0150002问题(转)的更多相关文章
- 解决应用程序无法正常启动0xc0150002等问题
1.在程序运行出错的时候,右键“我的电脑”,然后点击“管理”→“事件查看器”→“Windows 日志”→“应用程序”,查看错误信息: 1> “E:\IPCam_share\ARP\數據處理\Hg ...
- 应用程序无法正常启动0xc0150002(windows server 2003)
windows server 2003运行一个程序时出现 "应用程序无法正常启动0xc0150002"的错误提示; 解决方案: 下载地址:http://www.microsoft. ...
- 应用程序无法正常启动0xc0150002 解决方式
我也遇到过此问题,解决的方法: 方案一: 在项目的"属性|配置属性|链接器|常规"中的"启用增量链接"选择"否".此方法阻断了问题产 ...
- Windows 7下一个:该应用程序不能正常启动(0xc0150002)
在新系统中正确安装QQ2010无法执行,同一时候安装的TM2009也无法执行. 相同显示为"应用程序无法正常启动(0xc0150002). 请单击"确定" ...
- 解决应用程序无法正常启动0xcxxxxxxxxxx问题
简述:使用VS2008写了一个MFC程序,结果传到别人的机子上(WIN7)出现应用程序正常初始化(0xc0150002)失败的问题.为什么我的机子上可以,而别人的机子上运行不了呢?下面是我找到的一个解 ...
- VC++ 应用程序无法正常启动0xc0150002
使用VC++开发软件,编译后的程序打不开,弹出错误框: 使用Dpends Walker查看依赖项,没有什么异常. 然后,右键"计算机",选择"管理",打开计 ...
- office提示“应用程序无法正常启动(0xc0000142)。请单击确认关闭应用程序”
打开word文档,突然弹出如下提示框: 网上查询,说应用程序无法正常启动(0xc0000142)的原因可能是缺少组件导致的.控制面板 - 时钟和区域 - 更改日期.时间或数字格式 - 管理 - 更改系 ...
- vs2010编译出的exe“应用程序无法正常启动(0xc0150002)”
今天编译出一个使用ogre1.6.5动态库的应用程序,启动时报"应用程序无法正常启动(0xc0150002)"的错误提示. 编译环境是Win10+VS2010.这个错误可以在Win ...
- 【解决】应用程序无法正常启动(0xc000007b)。请单击“确定”关闭应用程序。
换了SSD硬盘,装了Windows 7 SP1 x64的系统.用了一段时间,突然一天有些软件打不开了.弹出下面的提示 应用程序无法正常启动(0xc000007b).请单击“确定”关闭应用程序.第一时间 ...
随机推荐
- 【C#】图片处理(底片,黑白,锐化,柔化,浮雕,雾化)
https://www.cnblogs.com/bomo/archive/2013/03/01/2939453.html --------------------------------------- ...
- ERROR: virtualenvwrapper could not find virtualenv in your path
环境: Ubuntu 18.04 Python3 使用pip3安装virtualenv和virtualenvwrapper两个包,ubuntu18.04中,用户使用pip安装的包在~/.local/下 ...
- yum update 更新失败
1.yum安装东西的时候,老是报:There are unfinished transactions remaining. You might consider running yum-complet ...
- HDU 5795 A Simple Nim ——(Nim博弈 + 打表)
题意:在nim游戏的规则上再增加了一条,即可以将任意一堆分为三堆都不为0的子堆也视为一次操作. 分析:打表找sg值的规律即可. 感想:又学会了一种新的方法,以后看到sg值找不出规律的,就打表即可~ 打 ...
- Selenium 的页面加载以及几种等待的问题
1. PageLoadStrategy : 当调用driver.get("https://xxxx.xxx.xxx")来访问某页面时,get方法通常会阻塞浏览器直到页面完全加载后才 ...
- 「Luogu P5603」小O与桌游
题目链接 戳我 \(Solution\) 我们来分析题目. 实际上就是求一个拓扑序满足拓扑序的前缀最大值最多/最少 对于第一种情况,很明显一直选当前能选的最小的是最优的对吧.因为你需要大的尽可能多.用 ...
- find命令不递归查询子目录
[root@dbrg-2 test]# find . ! -name "." -type d -prune -o -type f -name "*.jpg" ...
- zookeeper系列(八)zookeeper客户端的底层详解
作者:leesf 掌控之中,才会成功:掌控之外,注定失败.出处:http://www.cnblogs.com/leesf456/p/6098255.html 尊重原创,共同学习进步: 一.前言 ...
- C++入门经典-例9.2-重载函数模板,求出字符串的最小值
1:整形数和实型数编译器可以直接进行比较,所以使用函数模板后也可以直接进行比较,但如果是字符指针指向的字符串该如何处理呢?这时可以通过重载函数模板来实现.通常字符串需要库函数来进行比较,通过重载函数模 ...
- linux中~和/,$和#的区别
/是目录层的分隔.表示符.只有一个/表明是root,/etc/表明是根目录下面的etc目录(当然目录最后不需要/,但有/直接表明他是目录,没有末尾的/,那么/etc需要检测一下确定是目录还是文件,虽然 ...