Ошибки, баги, вопросы - страница 1313
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Как на этапе компиляции определить какой битности терминал? Идентификатор TERMINAL_X64 не подходит т.к. предназначен для функций. Скорее всего есть макросы о которых в справке не написано, но периодически которые иногда всплывают в тех или иных проявлениях :)
Как же вывернуться в случае использования двух dll - одна для 32х битных терминалов, другая для 64х битных ? Не кашерно как то два экземпляра программы держать ...
Кстати у кого есть опыт, если код скомпилировать в МЕ х64 то на 32х битных терминалах он будет работать без ошибок или все же будут какие то скрытые особенности исполнения кода?
К примеру есть функция funcTest(...) в библиотеке для 32х битных терминалов library_x86.dll и для 64х битных library_x64.dll.
Если import видна в пределах всего файла, то правильно ли будет писать такую конструкцию:
или этот прием не сработает?или этот прием не сработает?
Насколько я знаю, нет. Можно импортировать обе дллки и вызывать функции одной или другой в зависимости от битности терминала.
А вообще разделение на две версии по битности не такой уж бредовый вариант.
Беру индикатор (любой из стандартного комплекта), вызываю в советнике:
После прогона советника с визуализацией в тестере - всё работает, индикатор отрисовывается.
Теперь в индикаторе меняю одну строчку:
ExtMomBuffer[i]=close[i]*100/close[i-InpMomPeriod];
на такую:
ExtMomBuffer[i]=100;
И теперь индикатор не рисует вообще ничего - даже вертикальная шкала не обозначена.
Где ошибка? MetaTrader 4 build 765.
Ладно, назовем это нетрадиционным поведением :)
Спасибо огромное, но у меня еще один вопрос. Да, вот так заработало:
ExtMomBuffer[i]=i%2;
А вот так опять перестало:
У меня это работало в старых версиях МТ, а что в новых не так?
Так во втором варианте одно значение.
Вообще хз, я могу и ошибаться.
Ну можно и вот так сделать, все равно не работает:
ExtMomBuffer[0]=cnt++;
Суть проблемы в том, что попытка на каждом шаге советника писать в 0-й бар индикатора - ничего не дает.
Кажется, нащупал, куда рыть. Поменял
на true и что-то начало проявляться. Пойду напьюсь.