System.DllNotFoundException: Unable to load DLL 'MvxSock.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

1

I'm trying to use the M3 API Toolkit for the first time and following the instructions at here

I'm getting the following exception in my project. I have version 9.0.4.0 according to the readme file of the zip package

When I use the MvxSockN.dll I get the following error:-

An unhandled exception of type 'System.DllNotFoundException' occurred in WindowsFormsApplication2.exe

Additional information: Unable to load DLL 'MvxSock.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

And same error but for MvxSockx64.dll when I use the MvxSockN64.dll.

This seems to be a wrapper class written for .NET which using the MvcSock.dll file and therefore has a dependency on it. But how I can fix this since I am unable to add that as a reference. When I try to add the MvxSock.dll as reference it fails with this message:

A reference to '...\MvxSock.dll' could not be added. Please make sure that the file is accessible, and that it is a valid assembly or COM component.

After adding all the contents on MvxAPI folder, I get the following:

An unhandled exception of type 'System.BadImageFormatException' occurred in WindowsFormsApplication2.exe

Additional information: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)

In addition to that I have also tried different .NET frameworks. 2.0, 4.5.2. Doesn't make any difference.

Any tips on how to resolve this issue?

Many thanks,

c#
.net
dll
asked on Stack Overflow Dec 10, 2015 by A.K • edited Dec 10, 2015 by A.K

2 Answers

0

I don't understand the down vote, even though it has been discussed before but there is no single fix for this issue.

In my case, I solved the problem by

  • Initially I didn't install the API Toolkit. I was given the installed folder to copy on my machine. So I installed M3 API Toolkit from the exe installer instead.
  • Making my WCF application target 64bit platform.
  • Adding the 64 bit DLLs into the \Bin AND all the 5 dlls in C:\Windows\SysWOW64 folders.

These are the DLLs in SysWow64 folder: enter image description here

Hope this helps someone in the future.

answered on Stack Overflow Dec 18, 2015 by A.K • edited Feb 27, 2016 by A.K
0

A.K, yes, you have to install the M3 API Toolkit from its EXE installer (not simply unzipping from the ZIP) in order to register the DLLs on your system. Otherwise, if you simply unzip, you have to register the DLLs manually with the regsvr32 command; see the M3 API Toolkit documentation that explains it. Also, yes, you need to match the 32/64bit of your target architecture. --Thibaud


User contributions licensed under CC BY-SA 3.0