Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

C++ Dll in Dependency walker shows IESHIMS.dll and MSVCR110.dll

I've a dll which I've built in Windows7 (64bit OS) in 'Win32' platform. Unfortunately, when I import this dll in C# code, I encounter:

"

an attempt was made to load a program with an incorrect format HRESULT: 0x8007000B

" is observed

When I used DependencyWalker for this DLL, it shows IESHIMS.dll and MSVCR110.dll dependency which could not be found.

From where these dlls come from and why my created dll has dependency over these two? Pl help how can I getg over this?

Note: I've used x86 platform in my C# code.

like image 217
stack_pointer is EXTINCT Avatar asked Sep 20 '12 15:09

stack_pointer is EXTINCT


2 Answers

IEShims.dll is available on Windows Vista or Windows 7 to handle protected-mode Internet Explorer 9 or newer. Further explanation here.

You should be able to obtain a copy from another Windows 7 machine with Internet Explorer 9 or newer. As a quick fix, get the Windows 7 version from http://www.dll-files.com/dllindex/dll-files.shtml?ieshims

like image 137
Hanxue Avatar answered Sep 21 '22 04:09

Hanxue


You probably don't have the C++ runtime installed. Download it and install it. You have to play with the versions of runtime a bit. There are quite a few versions available. This will take care of your MSVCR110.dll issue. I am not sure why the dll show dependency for an IE dll though.

like image 27
rptony Avatar answered Sep 19 '22 04:09

rptony