Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Да, старые программы для 500/509 билдов работают и в новой версии.
Поддержка старых исполнимых EX4 файлов является для нас приоритетом и мы специально держим две виртуальные машины исполнения для старого и нового вариантов.
Это гибкое и лояльное к пользователям решение, которое позволит им продолжать использование в терминале своих, годами проверенных программ, даже если те окажутся не совсем совместимыми с новым компилятором и виртуальной машиной.
Однако хотелось такой же гибкости и в отношении программистов, для этого можно было бы, например определить в старой виртуальной машине константу __MQL4BUILD__ = 0 ,тогда с помощью условных операторов типа if(__MQL4BUILD__) можно было бы легко управлять блоками исходного кода для старого компилятора и различных версий новых компиляторов.
Это гибкое и лояльное к пользователям решение, которое позволит им продолжать использование в терминале своих, годами проверенных программ, даже если те окажутся не совсем совместимыми с новым компилятором и виртуальной машиной.
Однако хотелось такой же гибкости и в отношении программистов, для этого можно было бы, например определить в старой виртуальной машине константу __MQL4BUILD__ = 0 ,тогда с помощью условных операторов типа if(__MQL4BUILD__) можно было бы легко управлять блоками исходного кода для старого компилятора и различных версий новых компиляторов.
Ну вариант неплох и вполне рабочий. Это если, конечно, сможешь выклянчить у Рената спец-билд такого mql4-компилятора. Я думаю сделать его не проблема, а вот чтоб его фицияльно распространить до выпуска публичной версии нового MT...
Почему-то мне кажется что он не будет в восторге от этой идеи.
Ну вариант неплох и вполне рабочий. Это если, конечно, сможешь выклянчить у Рената спец-билд такого mql4-компилятора. Я думаю сделать его не проблема, а вот чтоб его фицияльно распространить до выпуска публичной версии нового MT...
Почему-то мне кажется что он не будет в восторге от этой идеи.
Думаю клянчить тут бесполезно, а что касается спец-билда mql4-компилятора, то для совместимости его по любому стоило бы подправить, хотя бы для настройки на новую структуру каталога MQL4\...
Чуть-чуть смекалки и немного dll, и это реализуемо. С помощью например того кода, который выложил MetaDriver.
Вы правы, с помощью dll старая и новая версии виртуальной машины легко определимы, например по ANSI/UNICODE строковым параметрам функций, но этим будем пользоваться, когда MQ не оставят нам другого выхода, ведь кое-кто категорически считает, что длл применять нельзя.
Обратите внимание, что существующая модель обновлений очень быстро в течение 3-4 недель произведет полный апгрейд всех существующих терминалов.
Это означает, что закладываться на поддержку 509 билдов не имеет смысла.
Думаю клянчить тут бесполезно, а что касается спец-билда mql4-компилятора, то для совместимости его по любому стоило бы подправить, хотя бы для настройки на новую структуру каталога MQL4\...
Вы правы, с помощью dll старая и новая версии виртуальной машины легко определимы, например по ANSI/UNICODE строковым параметрам функций, но этим будем пользоваться, когда MQ не оставят нам другого выхода, ведь кое-кто категорически считает, что длл применять нельзя.
Ты уж определись чего хочешь: (1) распознавания директив компилятора или (2) использования обеих виртуальных машин. Использовать обе ВМ из одного mql-кода не получится по-любому, ты хоть обвешайся DLL-ками. Распознавание ("новая"/"старая") действительно сделать можно, но тебе это не поможет никак в твоей задаче. // как я её понял. а я понятливый вапче (чего бы там кто по этому поводу не думал).
Это, кстати, не значит, что возможность использования обеих виртуальных машин одновременно вообще нереальна. Реальна - но совершенно в другой постановке и реализации. И никак не из одного и того же mql-кода.
Обратите внимание, что существующая модель обновлений очень быстро в течение 3-4 недель произведет полный апгрейд всех существующих терминалов.
Это означает, что закладываться на поддержку 509 билдов не имеет смысла.
Готов поверить вашему опыту, но всё-таки кажется, что переход на использования нового кода может оказаться гораздо более длительным и болезненным, а окончательно состоится только с ликвидацией второй виртуальной машины.
У тебя логика хромает. Метаквотам это не нужно (см. пост Рената выше).
Ты уж определись чего хочешь: (1) распознавания директив компилятора или (2) использования обеих виртуальных машин. Использовать обе ВМ из одного mql-кода не получится по-любому, ты хоть обвешайся DLL-ками. Распознавание ("новая"/"старая") действительно сделать можно, но тебе это не поможет никак в твоей задаче. // как я её понял. а я понятливый вапче (чего бы там кто по этому поводу не думал).
Это, кстати, не значит, что возможность использования обеих виртуальных машин одновременно вообще нереальна. Реальна - но совершенно в другой постановке и реализации. И никак не из одного и того же mql-кода.
Если говорить о DLL то это проблемы использования строковых массивов, указателей на массивы бар и.т.д. где при переходе на новую модель, будет реальная потеря производительности.