Мой подход. Ядро - Движок. - страница 25

 
Yuriy Asaulenko:

У вас и в МТ нет обратного вызова. Все делается по предопределенным в МТ событиям, которых раз, и все.

Вы все равно будете передавать в ДЛЛ события терминала, и без разницы, где вы их будете обрабатывать, в МТ или в ДЛЛ.

Вот пример моего интерфейса подключения:

Здесь уже все продумано.

Файлы:
 
Реter Konow:

Даже если представить, что постоянная проверка сообщений от Шарпа со стороны МКЛ-приложения, это не накладно, то разработка формата взаимодействия - очень объемная задача. 

Эта задача включает в себя следующее:

1. Придумывание организации общей памяти.

2. Реализация взаимодействия трех сторон.

3. Синхронное тестирование трех сторон (Шарп, ДЛЛ, МТ-приложение).

Очень трудозатратно.


В моем случае, пользователь получает файл и заполняет его. И подключение работает.

Не придумывайте. Я уже лет 8 этим занимаюсь с различными терминалами и языками, начиная с VBA Excel и кончая С++, и ничего об этих проблемах не знаю.)

Я уже писал, что ваша система возможно применима продавцами Маркета или людьми, кроме МТ-MQL, ничего не знающими о существовании других языков и сред программирования.

 
Yuriy Asaulenko:

Не придумывайте. Я уже лет 8 этим занимаюсь с различными терминалами и языками, начиная с VBA Excel и кончая С++, и ничего об этих проблемах не знаю.)

Посмотрите файл моего подключения.

Пользователь просто подключает этот файл через инклюд к своему советнику. И заполняет его. И все работает...
 
Yuriy Asaulenko:

...

Я уже писал, что ваша система возможно применима продавцами Маркета или людьми, кроме МТ-MQL, ничего не знающими о существовании других языков и сред программирования.

Кстати, я сейчас разрабатываю соединения GUI с советником в тестере. GUI будет на одном графике, а советник будет запущен в тестере. При это они будут полноценно взаимодействовать. И советник в тестере будет реагировать на действия пользователя на другом графике, который будет взаимодействовать с GUI.

Я придумал, как это реализовать.

А установить связь советника в тестере с Шарпом через ДЛЛ... Вроде нельзя.

 
Реter Konow:

А установить связь советника в тестере с Шарпом через ДЛЛ... Вроде нельзя.

Вроде можно. Тестер, насколько я знаю, никаких ограничений на связь с ДЛЛ не накладывает. Однако, сам не пробовал.

 
Yuriy Asaulenko:

Вроде можно. Тестер, насколько я знаю, никаких ограничений на связь с ДЛЛ не накладывает. Однако, сам не пробовал.

да можно конечно. Чтобы DLL разрешены и всё.
 
Ну, может и можно... Однако, "мазохистичность" выбора в сторону Шарпа уж больно очевидна)) Там столько всяких нюансов... Но, когда выбора нет, то конечно.  
 
Реter Konow:
Ну, может и можно... Однако, "мазохистичность" выбора в сторону Шарпа уж больно очевидна)) Там столько всяких нюансов... Но, когда выбора нет, то конечно.  

на Шарпе не писал  никогда, не было интереса, но на Делфи лет 5 назад подключал .dll с кнопками и формами, вообще без проблем все работало, да и весь проект на Делфи писал в течении дня, причем полдня потратил на поиски почему стандартные формы не работали, а когда подключил через вызов системных Виндовских окошек все исправно работало, но и МТ4 тогда очень туговат был, притормаживал, сейчас летает

в общем нет проблем .dll подключить, синхронизироваться удобно стандартными мьютексами - запустил поток для связи с терминалом и все, дальше все само по себе - отдельно форма в .dll , отдельно МТ никто никого не ждет

ЗЫ: прошу заметить, что Делфи довольно непрактичен для создания .dll, но что было под рукой (на чем сидел тогда) то и юзал )))


а по сабжу,ну вот никак не пойму, почему нельзя использовать стандартные классы из поставки МТ, максимум было бы интересно унифицировать бы процесс создания графики, ну пусть это был бы универсальный include где можно было бы закомментировать не нужные кнопки/диалоги и т.п.

 
  Пётр, Не думайте, что Ваш подход это что-то новое.
На какие только ухищрения не шли программисты, когда не было ООП.
Вы сами можете это увидеть, в программах на Си с открытыми исходниками.
Все Ваши утверждения о том что ООП это может, а это не может, никак не связаны с реальностью.
Вы говорите не об ООП, а о Ваших представлениях об ООП. Удивляет, что Вы столько о нём говорите,
но так и не удосужились узнать что это.

  Вы почему-то пренебрегаете чужим опытом, а он существует.
Глупо изучать четыре месяца, то что можно найти в гугле, и при этом узнать намного больше.
Изобретая свой язык разметки, Вы почему-то также не захотели изучить чужой опыт.
Например, есть бесплатный QT Designer. Он использует язык разметки на основе XML.
Delphi, C++ Builder тоже сейчас используют XML.
Ещё есть редактор ресурсов в MS Visusl Studio. Он позволяет редактировать окна диалога и помещать их в ресурсы.
У него тоже есть свой язык разметки.

  Исходя из моего опыта работы с GUI:
Хорошая графическая библиотека существенно облегчает работу с графическим интерфейсом.
Визуальный редактор добавляет удобства очень незначительно. Фактически это просто замануха для новичков.
Языки разметки обычно используются для хранения форм в визуальном редакторе. Без него язык разметки не нужен.
При наличии библиотеки, программисту проще создавать графический интерфейс в коде, а не используя язык разметки.
Я думаю что Вы навязываете Ваш язык разметки потому, что хотите скрыть код.

 
Igor Makanu:

а случаем не подскажите что-нибудь из бесплатных конструкторов GUI, чтобы можно было туда прописать код графики на MQL

есть желание сделать что то похожее на Delphi Drag-and-Drop, но пока не нашел бесплатного конструктора в котором бы можно было прописать код графики на MQL

Конструкторы GUI делаются под конкретную графическую библиотеку. Если бы был конструктор GUI для MQL, он был бы здесь.

Причина обращения: