Issue with running EX4 with DLL on VPS

Hello all,

I have recently written an indicator that uses a custom DLL written in C++ and uses MySQL Connector/C++ 8.0 to connect to a database for authentication. I was able to get the DLL to load on my own PC as well as another client’s, but I am unable to load it on my Virtual Private Server (VPS). It keeps returning error code 126 DLL not found.

I have ensured that the settings used to load this indicator are exactly the same as when running on PCs, including ensuring DLLs are allowed on the VPS side and that all dependencies are placed in the correct directories. Any help would be very much appreciated.



If it is about MQL5 VPS for MT4/MT5 so - read this part of MQL5 VPS rules -

Rules of Using the Virtual Hosting Service MetaTrader (Forex VPS)

No DLLs are allowed on a Virtual terminal. There is no physical capacity to use DLLs there.

If a program launched on a Virtual terminal tries to call a function from any DLL, this EX4/EX5 program is immediately stopped due to a critical error. Any DLL calls are forbidden.


Here is an update on the problem scope. I have attempted to load my custom DLL on four different devices (PCs) including the one I developed this DLL on. Of the four devices, only two successfully loaded the DLL (including my developer device), while among the other two, one displays error code 182, and the other error code 126. The four devices all have the exact same configuration where I believe is relevant, including allowing DLL imports and setting up the Libraries sub-directory in the MT4 terminal as shown in the attached screenshot. I have also attempted downloading and installing MySQL on the device that displays error code 182, but the problem still persists.

Shown below are the list of things I did to build my DLL, placed here in case it helps:

I am trying to find out why it loads only on two devices while it fails to load on the other two. I would appreciate it very much if I could receive some help on this.

Many thanks

Could be a dependency issue. You should check the dependency of your DLL and be sure you have all installed.

It looks like it’s not your DLL but a missing runtime dependency of the MySQL related software you use, which is causing the 126. I would guess it’s a missing VC++ runtime library which makes the MySQL driver fail. Make sure all versions are installed everywhere and current, 32 and 64 bit. The screenshot only shows the 32 bit versions.


Thank you all for your help. I have resolved the 126 errors, apparently they are missing the OpenSSL 32-bit libraries libeay32.dll and ssleay32.dll.

Many thanks.