Вопрос знатокам MQL - страница 17

 

кто Вам сказал что это ошибка?

на скрине явно написано что Ваш эксперт использует функцию ErrorDescription с типом string

Это не ошибка. Просто в новом билде сделали удобство - теперь можно посмотреть какие функции использует советник из длл и библиотек.

 
Rita:

В обоих папках (Инклюд и Libraries) присутствуют исходники stdlib. На всякий случай добавила-скопировала из папки Инклюд.

Но ошибка, описанная выше - по прежнему отображается во вкладке "зависимости". Может быть как-то изменить вызов этих функций: Вместо:

Задать вызов как-то иначе?

Или теперь пользоваться ф-ями И.Кима в последней версии мт4 будет невозможно?


1) откройте файл stdlib.mq4 в папке Libraries

2) откомпилируйте его

3) должно работать без ошибок

 

Благодарю всех за ответы и рекомендации. Еще небольшой вопрос.

Как я поняла - названия глобальных переменных теперь в коде подсвечиваются красным цветом. Однако, у меня в коде присутствуют составные названия, часть которых совпадает с глобальными. И эта совпадающая часть,почему-то, также подсвечивается красным цветом!

Может ли это как-то негативным обзаром влиять на работу советника? Или ничего страшного в такой частичной подсветке нет?

 
Rita:

Благодарю всех за ответы и рекомендации. Еще небольшой вопрос.

Как я поняла - названия глобальных переменных теперь в коде подсвечиваются красным цветом. Однако, у меня в коде присутствуют составные названия, часть которых совпадает с глобальными. И эта совпадающая часть,почему-то, также подсвечивается красным цветом!

Может ли это как-то негативным обзаром влиять на работу советника? Или ничего страшного в такой частичной подсветке нет?


ничего страшного нет, но ВЫ обратитесь в СервисДеск - пусть поправят.
 
Не слышала о таком сервисе. Дайте пож. ссылку.
 
Rita:
Не слышала о таком сервисе. Дайте пож. ссылку.

Надо на форуме mql5.com зарегистрироваться, там в профиле будет ссылка.
 
Красным светится руский язык а то что у Вас в глобалке светится чуть иначе, проблем у вас нет ....
 

Доброе утро!

После обновления МТ4 - нормально работающий до того индикатор перестал отрисовывать свою линию. Причем, обнаружилось, что каким-то образом код индикатора сильно вредит работе процессора на старых версиях мт4 с принудительно обновленным метаэдитором. Но об этом потом.

После обновления при установке индикатора на график глючно и неправильно отрисовывется заданная линия (по разности цен закрытия 2-х заданных символов) . При переключении таймфрейма линия пропадает вообще (пустое окно), и появляется надпись в журнале:

а после нескольких переключений тф (либо перезапуске мт4) индикатор вообще пропадает с графика:

2014.02.25 10:22:38.640 Custom indicator Spread-I-env #GCJ4,M30: removed

Пож. подскажите, в чем примерно может быть причина? Что это за странная ошибка:

2014.02.25 10:21:07.437 Access violation read to 0x000003E5 in 'C:\Program Files\InstaTrader\MQL4\indicators\Spread-I-env- mod1.ex4'

 

Здравствуйте!

 Подскажите пожалуйста как в новых build найти цвет фона графика?

 В старых находил так:

 

#import "user32.dll"

  int  GetWindowDC(int h);

  int  ReleaseDC(int h, int hDC);

  bool GetWindowRect(int h, int& pos[4]);

#import

#import "gdi32.dll"

  int GetPixel(int hDC, int x, int y);

#import

//+------------------------------------------------------------------+

//| script program start function                                    |

//+------------------------------------------------------------------+

void start()

{

  int col = getBackgroundColor();

  if (col==-1) MessageBox("Ни один угол окна не виден.");

          else MessageBox("Цвет фона: " + col);

}

//+------------------------------------------------------------------+

int getBackgroundColor()

{

  int h = WindowHandle(Symbol(), Period());

  int hDC = GetWindowDC(h);

  int col = GetPixel(hDC, 2, 2);

  if(col==-1) {

    // левый верхний угол не виден

    int rect[4];

    GetWindowRect(h, rect);

    int wW = rect[2] - rect[0]; // ширина окна

    int wH = rect[3] - rect[1]; // высота окна

    col = GetPixel(hDC, wW-3, wH-3); // правый нижний угол

    if(col==-1) col = GetPixel(hDC, 2, wH-3); // ЛНУ

    if(col==-1) col = GetPixel(hDC, wW-3, 2); // ПВУ

  }

  ReleaseDC(h, hDC);

  return(col);

}

 

в новых не работает! 

 

Спасибо, вопрос снимается.   Сам разобрался!

 color Color = ChartGetInteger( 0, CHART_COLOR_BACKGROUND, 0 );

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