我在'Win32'平台上使用Windows7(64位操作系统)构建了一个dll。不幸的是,当我用C#代码导入这个dll时,我遇到了:
“
尝试加载格式不正确的程序 HRESULT:0x8007000B
“被观察到
当我对此DLL使用DependencyWalker时,它显示无法找到的IESHIMS.dll和MSVCR110.dll依赖项。
这些dll来自哪里以及为什么我创建的dll对这两个dll有依赖? Pl帮助我如何解决这个问题?
注意:我在C#代码中使用了x86平台。
答案 0 :(得分:3)
IEShims.dll
可在Windows Vista
或Windows 7
上使用,以处理受保护模式Internet Explorer 9
或更新版本。 Further explanation here。
您应该可以使用Windows 7
或更新版本的其他Internet Explorer 9
计算机获取副本。要快速解决问题,请从http://www.dll-files.com/dllindex/dll-files.shtml?ieshims
Windows 7
版本
答案 1 :(得分:2)
您可能没有安装C ++运行时。 Download it并安装它。您必须稍微使用运行时版本。有很多版本可供选择。这将解决您的MSVCR110.dll问题。我不知道为什么dll显示IE dll的依赖性。
答案 2 :(得分:1)
确保在C#项目的属性中为目标体系结构选择了x86。