Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Естественно)
вот Makefile, от моего старого проекта, который точно работает - посмотри чего там в гуи проекта недовыставил
MYSQL_INCLUDE="C:\src\BWriter\mysql-connector-c-6.1.6-win32\include"
MYSQL_LIBPATH="C:\src\BWriter\mysql-connector-c-6.1.6-win32\lib"
all: BWriter.dll BWriterTest.exe
BWriter.obj: BWriter.c
cl /MD /I$(MYSQL_INCLUDE) /DDLL -c BWriter.c
BWriterTest.obj: BWriterTest.c
cl /MD /I$(MYSQL_INCLUDE) -c BWriterTest.c
BWriter.dll: BWriter.obj
link /DEF:BWriter.def /OUT:BWriter.dll BWriter.obj /LIBPATH:$(MYSQL_LIBPATH) libmysql.lib User32.lib Kernel32.lib
BWriterTest.exe: BWriterTest.obj BWriter.dll
cl /MD BWriterTest.obj /link /LIBPATH:$(MYSQL_LIBPATH) BWriter.lib libmysql.lib User32.lib Kernel32.lib
плюс должен быть файл определение *.def и в самих исходниках чОрное шаманство с __declspec(dllexport)
PS/ студией пользуюсь исключительно из командной строки, поэтому где ткнуть мышом неподскажу
РУКАЛИЦО...
Разобрался... Запутался я в папках своих терминалов) Их несколько (на одном реально торгую, другие для программирования и тестирования на демо-счетах). Оказывается я dll тупо не в ту папку кидал))) Еще удивился, почему все стало работать, когда я эту папку в переменную среды PATH прописал)))
Тут https://www.mql5.com/ru/articles/18
И еще. Время от времени проскакивает вот такая ошибка: " Access violation read to 0x0060FFFF in '...\MQL4\Libraries\Test.dll' " - с чем она может быть связана?
Сразу в догонку вопрос (хоть и не по теме...). Можно ли как-то скрыть отображение зависимостей во вкладке Зависимости при запуске эксперта?
типы непреведены и упахался стек при вызове, MQL-вский int это int64_t об этом надо помнить
Точно, спасибо!
Странно только, что ошибка то была, то иногда с обычным интом в dll прокатывало
UPD. И все равно время от времени проскакивает...
UPD2. Проблема была в передаче строк. Сделал передачу через wchar_t* (как в примере по ссылке выше) и все ок. И кстати ни в одном хэлпе (ни MQL4, ни MQL5) я не нашел указания, что "MQL-вский int это int64_t об этом надо помнить"