在使用别人提供的库进行编程的时候,设置好目录后,编译成功通过,但运行时却出现了如下错误(vs2012,windows8):
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/
S
ideB
yS
ide
错误
解决方法,本系统WIN2003 32位。 在
事件
查看器--系统里,经常出现 S
ideB
yS
ide
的
错误
提示,内容如下: Resolve Partial Assembly 为 Microsoft.Windows.Common-Controls 失败。 参考
错误
消息: 拒绝访问。
S
ideB
yS
ide
错误
解决方法,本系统WIN2003 32位。
在
事件
查看器--系
打开软件显示:
The application has failed to start because its s
ide
-by-s
ide
configuration is incorrect. Please see the application event log or use the command-line sxstrace.exe tool for more detail.