интересуют варианты предложенные вчера с помощью магического заклинания #defaine абракадабра ##_
UPD:
Vladimir Simakov OK, попробую разобраться
Igor Makanu:
так получатся сделать что хочу
интересуют варианты предложенные вчера с помощью магического заклинания #defaine абракадабра ##_
UPD:
Vladimir Simakov OK, попробую разобраться
UPD:
УРА! ЗАРАБОТАЛО! (С)
Спасибо! все взлетело как задумано!
ЗЫ: а как бы в эту абракадабру добавить макросы __MQL5__ и __MQL4__ но так чтобы функции fast_ххх() вообще не были в коде MQL4 никогда - от слова НИКОГДА
UPD:
УРА! ЗАРАБОТАЛО! (С)
Спасибо! все взлетело как задумано!
ЗЫ: а как бы в эту абракадабру добавить макросы __MQL5__ и __MQL4__ но так чтобы функции fast_ххх() вообще не были в коде MQL4 никогда - от слова НИКОГДА
проверка компилятора, если это "правильный компилятор", то на этапе компиляции он должен выбросить все лишнее
#ifdef __MQL5__#define mql5 true#else
#define mql5 false#endif
constbool isMQL5 = mql5;
conststring txt_1000symbols = "Язык MetaQuotes Language 5 (MQL5) является объектно-ориентированным языком программирования высокого уровня и предназначен для написания""автоматических торговых стратегий, пользовательских технических индикаторов для анализа разнообразных финансовых рынков. Он позволяет не только писать разнообразные""экспертные системы, предназначенные для работы в режиме реального времени, но и создавать собственные графические инструменты, помогающие принимать торговые решения.""MQL5 основан на концепции широко распространенного языка программирования С++, по сравнению с MQL4 в нем добавлены перечисления, структуры, классы и обработка событий."" Благодаря расширению числа встроенных основных типов, взаимодействие исполняемых программ на MQL5 с другими приложениями ""посредством dll максимально облегчено. Синтаксис языка MQL5 подобен синтаксису С++, и это позволяет легко переносить на него программы из современных языков ""программирования. Для целей изучения языка все темы сгруппированы по следующим разделам.\n";
//+------------------------------------------------------------------+voidOnStart()
{
if(isMQL5) Print(txt_1000symbols);
Print("end");
}
//+------------------------------------------------------------------+
откомпилируй и размер .ex5 понаблюдай ;)
ЗЫ: в if() можно поставлять isMQL5 , mql5 , можно модификатор const убрать - в общем правильный компилятор
мт4 почему то не создает новые копии dll в памяти если вызывать из 2-х ЕА , саму dll не хочу править (устраивает на все 100) , проще скопировать файл mydll.dll 5 раз
нужно сделать макропостановку чтобы получилось так
#define dllnum 02#import "mydll02.dll"#import
но хочу с проверкой, если нет макроса, dllnum то будет так "mydll.dll"
мт4 почему то не создает новые копии dll в памяти если вызывать из 2-х ЕА , саму dll не хочу править (устраивает на все 100) , проще скопировать файл mydll.dll 5 раз
нужно сделать макропостановку чтобы получилось так
но хочу с проверкой, если нет макроса, dllnum то будет так "mydll.dll"
UPD:
так решил
UPD2: не решил (((
'mydll02.dll' - expressions are not allowed on a global scope
Не получится ничего, наверное.
DEF_QUOTES(a##0##b.dll)
здесь не получается валидного токена. Вообще, по-хорошему, мкл должен уметь
так получатся сделать что хочу
интересуют варианты предложенные вчера с помощью магического заклинания #defaine абракадабра ##_
UPD:
Vladimir Simakov OK, попробую разобраться
так получатся сделать что хочу
интересуют варианты предложенные вчера с помощью магического заклинания #defaine абракадабра ##_
UPD:
Vladimir Simakov OK, попробую разобраться
UPD:
УРА! ЗАРАБОТАЛО! (С)
Спасибо! все взлетело как задумано!
ЗЫ: а как бы в эту абракадабру добавить макросы __MQL5__ и __MQL4__ но так чтобы функции fast_ххх() вообще не были в коде MQL4 никогда - от слова НИКОГДА
UPD:
УРА! ЗАРАБОТАЛО! (С)
Спасибо! все взлетело как задумано!
ЗЫ: а как бы в эту абракадабру добавить макросы __MQL5__ и __MQL4__ но так чтобы функции fast_ххх() вообще не были в коде MQL4 никогда - от слова НИКОГДА
как рантайм узнать какой терминал(МТ4/МТ5) выполняет код?
достаточно одной переменной true/false
как рантайм узнать какой терминал(МТ4/МТ5) выполняет код?
достаточно одной переменной true/false
ОК, но в макросах хочу, посмотреть, там, скорее всего, что то простое (примитивное будет)
UPD:
ОК, но в макросах хочу, посмотреть, там, скорее всего, что то простое (примитивное будет)
UPD:
В чём сакральный смысл?
В чём сакральный смысл?
проверка компилятора, если это "правильный компилятор", то на этапе компиляции он должен выбросить все лишнее
откомпилируй и размер .ex5 понаблюдай ;)
ЗЫ: в if() можно поставлять isMQL5 , mql5 , можно модификатор const убрать - в общем правильный компилятор
есть такой код:
мт4 почему то не создает новые копии dll в памяти если вызывать из 2-х ЕА , саму dll не хочу править (устраивает на все 100) , проще скопировать файл mydll.dll 5 раз
нужно сделать макропостановку чтобы получилось так
но хочу с проверкой, если нет макроса, dllnum то будет так "mydll.dll"
UPD:
так решил
UPD2: не решил (((
'mydll02.dll' - expressions are not allowed on a global scope
есть такой код:
мт4 почему то не создает новые копии dll в памяти если вызывать из 2-х ЕА , саму dll не хочу править (устраивает на все 100) , проще скопировать файл mydll.dll 5 раз
нужно сделать макропостановку чтобы получилось так
но хочу с проверкой, если нет макроса, dllnum то будет так "mydll.dll"
UPD:
так решил
UPD2: не решил (((
'mydll02.dll' - expressions are not allowed on a global scope
Не получится ничего, наверное.
DEF_QUOTES(a##0##b.dll)здесь не получается валидного токена. Вообще, по-хорошему, мкл должен уметь
но увы, как говорится - вам здесь не с++ ))
Не получится ничего, наверное.
здесь не получается валидного токена. Вообще, по-хорошему, мкл должен уметь
но увы, как говорится - вам здесь не с++ ))
угу
пробовал хотя бы инклудники через макроподстановку подключать.... что то опять не так пошло
'#include' - double quotes or angle bracket < are needed
'#include' - expressions are not allowed on a global scope
Только не понял - ради чего свечи жгутся? Так заработет, наверное:
Допускаю, что полезно может быть, когда какой-то конфиг, который правится.
PS: если всё же очень хочется, то попробуйте имя либе дать name_dll (без точки), возможно взлетит.