Обсуждение статьи "Как за 10 минут написать DLL библиотеку для MQL5 и обмениваться данными?" - страница 9
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вам бы технический уровень подтянуть.
Для 64 битных программ нужны 64 битные библиотеки и никак в разумных рамках не подключить 32 битные. Чтобы установить 32 битную версию, инсталлер надо запустить с ключом /32
Статью я перепишу и дополню крутыми штуками, что давно уже внедрены в Метаедитор и платформы МТ4 и МТ5. Многие разработчики не в курсе новых возможностей.
И смотрю что Майрософт стал ужимать C++. В последнем компиляторе даже установку возможности работы с формами в С++ убрали. И на вопрос почему? Отвечают что а почему бы Вам не попробовать на новом более совершенном С#. Так что если Вы смотрите в перспективу, Вам это тоже нужно учитывать.
Ну Майкрософт известный убийца технологий, а в последнее время и себе могилу за могилой копает.
Зачем ему мешать - пусть сам в свою яму падает. Это так образно, дабы не тратить время на технические детали. Кто желает деталей - их тысячи есть в интернете. После "более совершенного C#" у меня других слов нет.
Вам бы технический уровень подтянуть.
Для 64 битных программ нужны 64 битные библиотеки и никак в разумных рамках не подключить 32 битные. Чтобы установить 32 битную версию, инсталлер надо запустить с ключом /32
Статью я перепишу и дополню крутыми штуками, что давно уже внедрены в Метаедитор и платформы МТ4 и МТ5. Многие разработчики не в курсе новых возможностей.
Все оказалось просто!
Установил бесплатную Visual Studio Community 2015 (именно Community, т.к. в ней есть поддержка х64, в отличие от Express) У платных версий х64 конечно тоже есть, но я рассматривал бесплатные варианты. Web Installer у меня выдал ошибку, поэтому установил из образа ISO. При установке выберите "Выборочную" установку и отметьте С++ (по умолчанию он не устанавливается).
Далее все сделал, как в статье, т.е. создал Win32 проект. Сделал сборку, которую х64 терминал отказался принять (как и ожидалось).
Затем во вкладке "Сборка" -> "Диспетчер конфигураций" изменил платформу на х64, (можно так же изменить "Активная платформа решения" на х64)
Снова сделал сборку. Новая dll оказалась в папке \x64\Debug (окончательная сборка будет в x64\Release\) , которую х64 терминал без проблем обработал, выдав следующее:
19:29:01.883 dll_test (EURUSD.e,H1) Time 16 msec, int: -752584127 double: 17247836076609.0
19:29:01.883 dll_test (EURUSD.e,H1) Array: 0 1 2 3 4 5 6 7 8 9
19:29:01.883 dll_test (EURUSD.e,H1) Replace: A quick brown cat jumps over the lazy dog
19:29:01.886 dll_test (EURUSD.e,H1) Access violation at 0x000007FEFB0F176F write to 0x0000000000000000 in '...\MQL5\Libraries\ConsoleApplication1.dll'
и дальнейшее описание перехваченной ошибки
Т.е. все работает!!!
Примечание:
при переносе на др. компьютер ДЛЛ отказалась работать, т.к. использовала компоненты из самой VS. Проблема решается в Проект -> Свойства -> Использование MFC, установить в "Использовать MFC в статической библиотеке". После этого пересобрать и перекомпилировать ДЛЛ
Найдено на форуме:
Можно проводить оптимизацию советников с DLL не только на локальном компьютере, но и в локальной сети. Для этого на компьютерах сети нужно добавить ключ /dlls в реестр для агентов тестирования. Вызов редактора реестра: regedit
Renat Fatkhullin:
У существующих инсталлированных агентов можно поменять команды запуска только через реестр в ветках HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MetaTester-XXXX
Просто кликните на каждом параметре ImagePath и допишите в конец строки /dlls
Сейчас занимаюсь привязкой ZeroMQ к MT4 через DLL.
Очень плохо как-то. Терминал крошится сплошь и рядом при запуске индикатора или при выгрузке. Причем это не проявляется в режиме отладки, так что вообще не понятно, что происходит.
Добрый день.
Почему-то у меня при запуске тестового примера скрипт отрубается при первом же обращении к импортируемой функции
2016.07.30 23:30:14.088 Scripts script mql5dll_test (EURUSD,H1) removed
Что я делаю не так?
Добрый день.
Почему-то у меня при запуске тестового примера скрипт отрубается при первом же обращении к импортируемой функции
2016.07.30 23:30:14.088 Scripts script mql5dll_test (EURUSD,H1) removed
Что я делаю не так?
статья 6-летней давности, что-то изменилось, скорее всего
код ошибки какой?