Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1108

 
Можно ли проверить какие значения используются в библиотеке, я попробовал вывод в файл пример выше но не сработало чем можно имитировать в библиотеке функцию принт?
 

Как передавать структуры между терминалами МТ4/5 ?


Способов передачи много.


Но сначала нужно сформировать какую-то строку с данными, которая потом будет прочитана. 


Вопрос: как передавать такую структуру?

struct STR_answer
  {
   int               full_total_real;
   int               remain_real;
   int               full_total_demo;
   int               remain_demo;
   string            Name;
   string            Full_name;
  };

Есть просто способ, например собрать длинную строку из данных вида переменная1 = значение1, переменная2 = значение2.

Но под каждую структуру нужно городить свои строки и свои парсеры.


Есть какой-то другой, легкий и универсальный способ?

 
Sergey Likho:

Как передавать структуры между терминалами МТ4/5 ?


Способов передачи много.


Но сначала нужно сформировать какую-то строку с данными, которая потом будет прочитана. 


Вопрос: как передавать такую структуру?

Есть просто способ, например собрать длинную строку из данных вида переменная1 = значение1, переменная2 = значение2.

Но под каждую структуру нужно городить свои строки и свои парсеры.


Есть какой-то другой, легкий и универсальный способ?

Гораздо проще через файл. Если вы пишете структуру, то знаете её содержимое и можете в приёмнике повторить набор элементов. А дальше просто FileWriteStruct и FileReadStruct
 
Sergey Likho:

Как передавать структуры между терминалами МТ4/5 ?

Есть какой-то другой, легкий и универсальный способ?

@fxsaber такое универсальное решение делал, вот мне он тестовый пример помог сделать, решение должно и в МТ4 и в МТ5 работать (в МТ5 проверял - ОК)

https://www.mql5.com/ru/forum/320395/page7#comment_12922647

если разберетесь, то останется решить задачу обмена между программами, в КБ есть пример файлмеппинг без dll , хотя можно и через файл, если не часто данные пробрасывать

Каким вы видите Metatrader X в 2030 году?
Каким вы видите Metatrader X в 2030 году?
  • 2019.08.21
  • www.mql5.com
Что-то тут задумался, я на форе около 13 лет, начал с МТ4 в 2006 году...
 
Sergey Likho:

Как передавать структуры между терминалами МТ4/5 ?

Способов передачи много.

Вопрос: как передавать такую структуру?

Вот статья https://www.mql5.com/ru/articles/364  как загрузить структуру в оперативную память, элементами структуры могут быть любые данные если разберётесь может кому-то что-то тоже подскажете.

Было бы классно если бы это работало и в мт4 а может работает, у меня проверить нет возможности.

 

https://www.mql5.com/ru/forum/95447/page5


Здесь и на соседних страницах много классных примеров с конвертацией данных. 

Я пока не нашел универсального решения о том как сконвертировать строку обратно в структуру

Библиотеки: TypeToBytes
Библиотеки: TypeToBytes
  • 2017.07.19
  • www.mql5.com
Статьи и техническая библиотека по автоматическому трейдингу: Библиотеки: TypeToBytes
 
Sergey Likho:

https://www.mql5.com/ru/forum/95447/page5


Здесь и на соседних страницах много классных примеров с конвертацией данных. 

Я пока не нашел универсального решения о том как сконвертировать строку обратно в структуру

зачем конвертировать?
делаете union и пересылаете то что вам нужно.

 

Как передавать структуры. Решение


Способов передачи данных много. 

Вопрос с которым помог  @fxsaber как из структуры сделать строку, которую затем уже можно слать 1001 способом дальше.


Часть 1 Как сделать из структуры строку https://www.mql5.com/ru/forum/95447/page5#comment_15687505  

Часть 2 Как сделать из строки структуру https://www.mql5.com/ru/forum/95447/page5#comment_15688334   

Библиотеки: TypeToBytes
Библиотеки: TypeToBytes
  • 2017.07.19
  • www.mql5.com
Статьи и техническая библиотека по автоматическому трейдингу: Библиотеки: TypeToBytes
 

Можно ли в mql4/5 сохранить указатель на массив в переменную?

Почему в с++ нельзя управлять массивом созданным в mql4, пробовал передавать доступ к данным массива есть а к его ссылкам и указателю нет, в результате нельзя со стороны стороннего приложения ни размер изменить ни указатель сохранить для дальнейшего использования, где создаётся массив mql4 в дексрипторе что к нему нет доступа?

 
Sergey Likho:

Как передавать структуры.

Массив байтов. Строки не нужны.

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