Обсуждение статьи "Используйте EX5-библиотеки для продвижения своих разработок" - страница 2

 

Вообще одна функция из импорта возвращает интерфейс, а к интерфейсу обращение происходит без штрафа.

Набор функций лучше хранить в mqh файле.

 
Urain:

Вашим же салом вам же по мусалам, а твои когда будут?

А мои уже есть и в нейроветке валяются. Перекладывать буду наверное не скоро, у меня сейчас по ближайшим планам завоевание мира.

Честно говоря ещё немного почитаю твои посты и вообще брошу МТ5 нафик.

Потерпи, все будет хорошо :)

 

Думаю, не все еще знают, что в редакторе MetaEditor 5 есть специальная команда, которая позволяет (дословно) "сформировать включаемый файл из экспортируемых функций текущего файла".

Генерация включаемых файлов

В MetaEditor предусмотрена специальная функция генерации включаемых файлов (*.mqh) из экспортируемых функций текущего файла. Для запуска генерации, необходимо выполнить команду Сформировать mqh-файл" в меню "Сервис".

Процесс генерации

Генерация mqh-файла происходит следующим образом:

  • В текущем открытом файле находятся все функции с постмодификатором export.
  • Генерируется включаемый файл с директивой #import и описанием найденных функций.
  • Если ни одна экспортируемая функция не найдена, выводится соответствующее сообщение.
  • Если исходный файл расположен в папке /Libraries, то имя модуля в директиве #import будет иметь относительный путь от каталога /Libraries. Если файл расположен в другом каталоге, в #import подставляется только имя ex5-файла.

Если текущий файл является включаемым (*.mqh), команда генерации не работает.

Путь генерации

Каталог, в котором генерируется mqh-файл, зависит от расположения исходного файла:

  • Если текущий файл находится в каталоге /Libraries или в одном из его подкаталогов, включаемый файл будет сгенерирован в корне папки /Include.
  • Если исходный файл расположен в каком-либо другом каталоге, включаемый файл генерируется в том же месте.

Использование mqh-файлов

Функция генерации включаемых файлов позволяет легко предоставлять другим пользователям доступ к вашим функциям без раскрытия их исходного кода. Для этого достаточно предоставить сгенерированный mqh-файл, а также ex5-файл, в котором находится реализация функций.

 

Возможно, вам будет интересно узнать, что в MetaEditor 5 есть специальная команда, позволяющая генерировать включаемые файлы экспортируемых функций в текущий файл.


Генерация включаемых файлов

MetaEditor has a special feature for generating include files (*.mqh) on the basis of exported functions of the current file. To start this function, you should execute the "Создание файла включения Generate Include File" command of the "Tools" menu.

Процесс генерации

Генерация mqh-файла происходит следующим образом:

  • В текущем открытом файле производится поисквсех функций с модификаторомexport post.
  • Генерируетсяmqh-файл, содержащий директиву#import и описание найденных функций.
  • Если экспортируемые функции не найдены, отображается соответствующий диалог.
  • Если исходный файл расположен в каталоге /Libraries, то имя модуля в директиве #import будет содержать путь относительно каталога /Libraries. Если файл расположен в другом каталоге, то в #import будет указано только имя файла ex5.

Если текущий файл является включаемым файлом (*.mqh), то команда генерации отключается.

Путь генерации

Папка, в которой генерируются mqh-файлы, зависит от расположения исходных файлов:

  • Если исходный файл находится в каталоге /Libraries или в одной из его подпапок, включаемый файл будет сгенерирован в корне папки /Include.
  • Если исходный файл находится в другой папке, включаемый файл будет сгенерирован в том же месте.

Использование файлов MQH

Функция генерации включаемых файлов позволяет легко делиться своими функциями с другими пользователями, не раскрывая исходный код. Для этого достаточно предоставить сгенерированный mqh-файл и файл ex5, в котором реализованы функции.

 
Где находится источник статьи "3. Инициализация переменных в файле .ex5"? (SuperClass.mqh; SuperClass.mq5 и т.д...)
 
VincentX:

Где находится источник статьи "3. Инициализация переменных в файле .ex5"? (SuperClass.mqh; SuperClass.mq5 и т.д...)
я задаю тот же вопрос
 
Renat:
...
Is it planned to implement export for Class or something similar ?
 
angevoyageur:
Is it planned to implement export for Class or something similar ?
Yes, but not now.
 
Renat:
Yes, but not now.
Thank you.
 

Ну хоть какая то возможность экспорта классов. 

В МТ4 это сработает?