项目场景:
C#程序调用外部C++动态库时
问题描述:
调用动态库时,出现:{"无法加载 DLL“controlcan.dll”: 应用程序无法启动,因为应用程序的并行配置不正确。有关详细信息,请参阅应用程序事件日志,或使用命令行 sxstrace.exe 工具。 (异常来自 HRESULT:0x800736B1)。"}
应用程序事件日志显示:
“XX\bin\Debug\xx.dll”的激活上下文生成失败。 找不到从属程序集 Microsoft.VC90.MFC,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"。 请使用 sxstrace.exe 进行详细诊断。
解决方案:
根据应用程序事件日志提示看出应该时确实C++运行库,由于这里processorArchitecture="amd64",所以需要安装vcredist_x64.exe,如果是processorArchitecture="x86"则需要安装vcredist_x32.exe