Странно только, что ошибка то была, то иногда с обычным интом в dll прокатывало
UPD. И все равно время от времени проскакивает...
UPD2. Проблема была в передаче строк. Сделал передачу через wchar_t* (как в примере по ссылке выше) и все ок. И кстати ни в одном хэлпе (ни MQL4, ни MQL5) я не нашел указания, что "MQL-вский int это int64_t об этом надо помнить"
где на этом-же сайте был некий MQL4.h с typedef`ами MQL4_INT, MQL4_LONG (типа такого) и так далее - по разрядности они не совпадают с привычными int,long. Что доставляет радости по первости. Кто из них точно не совпадал - посмотрите, могу ошибаться, последнюю DLL делать погода-год назад. Но впечатления остались :-)
Maxim Kuznetsov: где на этом-же сайте был некий MQL4.h с typedef`ами MQL4_INT, MQL4_LONG (типа такого) и так далее - по разрядности они не совпадают с привычными int,long. Что доставляет радости по первости. Кто из них точно не совпадал - посмотрите, могу ошибаться, последнюю DLL делать погода-год назад. Но впечатления остались :-)
В MQL4 int - это INT32 (signed int) в C++, long - INT64 (signed __int64) в С++.
Точно, спасибо!
Странно только, что ошибка то была, то иногда с обычным интом в dll прокатывало
UPD. И все равно время от времени проскакивает...
UPD2. Проблема была в передаче строк. Сделал передачу через wchar_t* (как в примере по ссылке выше) и все ок. И кстати ни в одном хэлпе (ни MQL4, ни MQL5) я не нашел указания, что "MQL-вский int это int64_t об этом надо помнить"
где на этом-же сайте был некий MQL4.h с typedef`ами MQL4_INT, MQL4_LONG (типа такого) и так далее - по разрядности они не совпадают с привычными int,long. Что доставляет радости по первости. Кто из них точно не совпадал - посмотрите, могу ошибаться, последнюю DLL делать погода-год назад. Но впечатления остались :-)
Или только функции можно экспортировать?