Не подключается DLL.

 
Пишу прокладку для WebSocket. Сделал dll на websocketpp. При попытке подключения в терминале выдает ошибку: 2022.07.12 19:29:38.114 Cannot load 'TestDLL.dll' [126]. При этом, если не подключать в код DLL никаких классов - этой ошибки нет. Возможно проблема в статической линковке?

 
DrSky:
Пишу прокладку для WebSocket. Сделал dll на websocketpp. При попытке подключения в терминале выдает ошибку: 2022.07.12 19:29:38.114 Cannot load 'TestDLL.dll' [126]. При этом, если не подключать в код DLL никаких классов - этой ошибки нет. Возможно проблема в статической линковке?

DLL используют соглашения ABI С (у С++ их нет вообще стандартных)

поэтому для методов классов нужны функциональные обёртки. extern "С" и __stdcall . И убедитесь что линковщик не подставляет лишних символов к именам (ту-же @)

 
DrSky:
Пишу прокладку для WebSocket. Сделал dll на websocketpp. При попытке подключения в терминале выдает ошибку: 2022.07.12 19:29:38.114 Cannot load 'TestDLL.dll' [126]. При этом, если не подключать в код DLL никаких классов - этой ошибки нет. Возможно проблема в статической линковке?

Операционная система не может найти дополнительные DLL, от которых зависит ваша DLL.

На это указывает ошибка 126. Это если сама ваша DLL нашлась по пути.

 
MetaQuotes #:

Операционная система не может найти дополнительные DLL, от которых зависит ваша DLL.

На это указывает ошибка 126. Это если сама ваша DLL нашлась по пути.

а кстати, почему MT так и не добавляет MQL5/Libraries через SetDllDirectory() ?

 
MetaQuotes #:

Операционная система не может найти дополнительные DLL, от которых зависит ваша DLL.

На это указывает ошибка 126. Это если сама ваша DLL нашлась по пути.

Спасибо, разобрался через Process Monitor.