当前位置: 首页 > 编程语言 > C#

C#CouldnotloadDLL(CannotfindmoduleHRESULT-0x8007007E)分享

时间:2023-04-10 21:21:07 C#

模块。(HRESULTexception:0x8007007E)操作系统:Windows7我有两个站,VisualStudio2012,使用.net4.0;另一个没有安装VS在VS2012的第一站我有一个C#解决方案,导入了C++项目。我正在使用:[DllImport("x.dll",CallingConvention=CallingConvention.Cdecl)][return:MarshalAs(UnmanagedType.I4)]在这个站上工作。但是当我移动另一个站(没有安装VS)时,它报错了。如果我安装VS,它就可以工作。出现此问题的可能原因是什么?关于我可能遗漏的内容或如何调试此问题的任何想法?最可能的原因是未安装VisualStudio的计算机缺少非托管DLL所需的C++运行时。从可下载的可再发行组件安装适当的C++运行时。确保您的非托管DLL链接到发布运行时,而不是调试运行时。后者不能重新分配。您可以使用DependencyWalker、ProcessMonitor等工具调试非托管DLL依赖问题。我遇到了同样的问题使用DependencyWalker检查缺少的依赖项在我的情况下,我丢失了msvcp110d.dll和msvcr110d.dll我将这两个文件从我的开发PC复制到测试PC的C:WindowsSysWOW64PC并且它成功了!此外,您可以将VisualStudioC++11.0DebugCRT(x86)添加为InstallShield中的依赖项以使其正常工作。对大家有用,需要了解更多的C#学习教程。希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: