Пытаюсь из dll вернуть значение int в MetaTrader4.
Например, 1. А приходит всегда NULL.
test.def
LIBRARY test
EXPORTS
FuncReturn
dllsample.cpp
BOOL APIENTRY DllMain(HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return(TRUE);
}
#define MT4_EXPFUNC __declspec(dllexport)
MT4_EXPFUNC int __stdcall FuncReturn()
{
return 1;
}
sample.mq4
#import "bot.dll"
int FuncReturn();
#import
int init()
{
Print(FuncReturn());
return(0);
}
PS Сама функция отрабатывает нормально - логировал. Но return не возвращает значение.
Вот тут нашёл эту проблему.
http://stackoverflow.com/questions/39520941/how-to-pass-argument-by-reference-from-mql4-to-c-dll
Сделал как написано, всё заработало.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости