应用程序无法启动(0xc0150002)SidebySide ID:33错误

在使用别人提供的库进行编程的时候,设置好目录后,编译成功通过,但运行时却出现了如下错误(vs2012,windows8):

应用程序无法启动(0xc0150002)SidebySide ID:33错误_第1张图片

google的解决方案很多是说取消程序生成清单,也就是取消使用menifest文档,但是按以上方法操作之后,依然无法解决。打开计算机管理的日志,打开方法是右键计算机->管理->windows日志->应用程序,可以看到如下错误信息(SidebySide ID:33):

“E:\smart city\new\Baseline+SDK及其使用说明\SDK及使用说明\20140314_AnalysisSDK_V6_px_1.1\test\Debug\AnalysisSDKd.dll”的激活上下文生成失败。 找不到从属程序集 Microsoft.VC90.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"。 请使用 sxstrace.exe 进行详细诊断。

于是使用 sxstrace.exe 进行诊断,使用方法为:

  • 以管理员方式启动命令行(cmd)
  • cd到有写入权限的文件夹,例如e:
  • 运行命令sxstrace.exe Trace -logfile:test.log开始跟踪,此时可以去运行你的程序了,然后回车结束
  • sxstrace.exe Parse -logfile:test.log -outfile:test.txt将上一步Trace到的错误信息从二进制转换为文本,打开文本得到需要的信息。
此次得到的错误信息为:
=================
开始生成激活上下文。
输入参数:
Flags = 0
ProcessorArchitecture = Wow32
CultureFallBacks = zh-CN;zh-Hans;zh;en-US;en
ManifestPath = E:\smart city\new\Baseline+SDK及其使用说明\SDK及使用说明\20140314_AnalysisSDK_V6_px_1.1\test\Debug\AnalysisSDKd.dll
AssemblyDirectory = E:\smart city\new\Baseline+SDK及其使用说明\SDK及使用说明\20140314_AnalysisSDK_V6_px_1.1\test\Debug\
Application Config File = 
-----------------
信息: 正在解析清单文件 E:\smart city\new\Baseline+SDK及其使用说明\SDK及使用说明\20140314_AnalysisSDK_V6_px_1.1\test\Debug\AnalysisSDKd.dll。
信息: 指令清单定义标识是 (null)。
信息: 参考: Microsoft.VC90.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"
信息: 正在解析参考 Microsoft.VC90.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"。
信息: 正在解析 ProcessorArchitecture WOW64 的参考。
信息: 正在解析区域性 Neutral 的参考。
信息: 正在应用绑定策略。
信息: 未找到发布服务器策略。
信息: 未找到绑定策略重定向。
信息: 开始程序集探测。
信息: 未找到 WinSxS 中的程序集。
信息: 尝试在 C:\Windows\assembly\GAC_32\Microsoft.VC90.DebugCRT\9.0.21022.8__1fc8b3b9a1e18e3b\Microsoft.VC90.DebugCRT.DLL 上探测指令清单。
信息: 未找到区域性 Neutral 的指令清单。
信息: 结束程序集探测。
信息: 正在解析 ProcessorArchitecture x86 的参考。
信息: 正在解析区域性 Neutral 的参考。
信息: 正在应用绑定策略。
信息: 未找到发布服务器策略。
信息: 未找到绑定策略重定向。
信息: 开始程序集探测。
信息: 未找到 WinSxS 中的程序集。
信息: 尝试在 C:\Windows\assembly\GAC_32\Microsoft.VC90.DebugCRT\9.0.21022.8__1fc8b3b9a1e18e3b\Microsoft.VC90.DebugCRT.DLL 上探测指令清单。
信息: 尝试在 E:\smart city\new\Baseline+SDK及其使用说明\SDK及使用说明\20140314_AnalysisSDK_V6_px_1.1\test\Debug\Microsoft.VC90.DebugCRT.DLL 上探测指令清单。
信息: 尝试在 E:\smart city\new\Baseline+SDK及其使用说明\SDK及使用说明\20140314_AnalysisSDK_V6_px_1.1\test\Debug\Microsoft.VC90.DebugCRT.MANIFEST 上探测指令清单。
信息: 尝试在 E:\smart city\new\Baseline+SDK及其使用说明\SDK及使用说明\20140314_AnalysisSDK_V6_px_1.1\test\Debug\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.DLL 上探测指令清单。
信息: 尝试在 E:\smart city\new\Baseline+SDK及其使用说明\SDK及使用说明\20140314_AnalysisSDK_V6_px_1.1\test\Debug\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.MANIFEST 上探测指令清单。
信息: 未找到区域性 Neutral 的指令清单。
信息: 结束程序集探测。
错误: 无法解析参考 Microsoft.VC90.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"。
错误: 生成激活上下文失败。
结束生成激活上下文。

直接下载visual  studio 2008 sp1,安装里面的VC_x86Runtime.exe可以解决问题。

参考链接:

sxstrace.exe使用方法:http://www.fundootech.com/2013/01/how-to-use-sxstraceexe.html

SidebySide解决方法:http://jackiechung308.blog.163.com/blog/static/203407219201362213030536/

你可能感兴趣的:(C++,2012,Studio,Visual)