Новая версия платформы MetaTrader 4 build 1045 - страница 15

 
Alexey Volchanskiy:
Да уже нашел, честно говоря, не ожидал, что МТ4 до сих пор не юникодовый! Вроде как с начала 2000-х стандарт на юникод в интерфейсе. У МК где-то прорывы, а где-то просто пипец...

Вы забыли, что поддержка Windows 98(без юникода) в МТ4 дай бог в 2006 была отключена.

Вот сейчас Windows XP собираемся отключать в пятерке.

 
Renat Fatkhullin:

Вы забыли, что поддержка Windows 98(без юникода) в МТ4 дай бог в 2006 была отключена.

Вот сейчас Windows XP собираемся отключать в пятерке.

Тогда вопрос: Как это может повлиять на VPS, ведь там не установлены WIN10 ?

Спасибо! 

 
Vitaly Muzichenko:

Тогда вопрос: Как это может повлиять на VPS, ведь там не установлены WIN10 ?

Вопрос не понятен.

Перечитайте внимательно мое утверждение и свой вопрос, пожалуйста.

 
Renat Fatkhullin:

Вопрос не понятен.

Перечитайте внимательно мое утверждение и свой вопрос, пожалуйста.

Имел ввиду, как будет в плане отображения шрифтов.

 

 
Vitaly Muzichenko:

Имел ввиду, как будет в плане отображения шрифтов.

 

Единственный рабочий вариант поставить русский для non unicode шрифтов в настройках операционки.
 
Renat Fatkhullin:
Единственный рабочий вариант поставить русский для non unicode шрифтов в настройках операционки.
Да, после этого все нормально отображается. 
 
если в Expert Advisor-е присутствует код с вечным циклом:
int OnInit()
{
   while(true)
   {
      Sleep(2000);
      if (IsStopped())
         break;
   }
   return(INIT_SUCCEEDED);
}
 то: 

1) Невозможно переключить период графика из тулбара

2) Невозможно перетянуть на график новый символ из Market Watch с помощью драг анд дроп-а  

Если задержку убрать. То срабатывает почти всегда, но
в документации по MQL4 сказано, что адвайзеру дается 3 секунды, чтобы завершить свою работу, иначе он закрывается принудительно.

А в текущей ситуации. Адвайзер видимо вообще не закрывается. 

До Build 1045 все работало, как ожидается.

В аттаче Expert Advisor: WhileTrue.mq4 

Файлы:
WhileTrue.mq4  1 kb
 

Ну это же додуматься надо, так в ините писать...

В документации также сказано, что инит должен завершить свою работу как можно скорее. А это значит - нечего впихивать туда бесконечные циклы. 

 
Сергей:
если в Expert Advisor-е присутствует код с вечным циклом:
int OnInit()
{
   while(true)
   {
      Sleep(2000);
      if (IsStopped())
         break;
   }
   return(INIT_SUCCEEDED);
}
то: 

1) Невозможно переключить период графика из тулбара

2) Невозможно перетянуть на график новый символ из Market Watch с помощью драг анд дроп-а  

Если задержку убрать. То срабатывает почти всегда, но
в документации по MQL4 сказано, что адвайзеру дается 3 секунды, чтобы завершить свою работу, иначе он закрывается принудительно.

А в текущей ситуации. Адвайзер видимо вообще не закрывается. 

До Build 1045 все работало, как ожидается.

В аттаче Expert Advisor: WhileTrue.mq4 

Простите, а для чего вы инициализацию зацикливаете?

Можно ещё вилку из розетки выдернуть...
 
Vitalie Postolache:

Ну это же додуматься надо, так в ините писать...

В документации также сказано, что инит должен завершить свою работу как можно скорее. А это значит - нечего впихивать туда бесконечные циклы. 

Ничего подобного в документации не нашел. До текущего релиза все работало нормально. 

Кроме того - это не вечный цикл. Он прекращается, когда эксперт адвайзер должен быть закрыт.
На предыдущем он должен закрыться максимум через 2 секунды, при этом, ему положено 3 секунды на закрытие.
Если и за 3 секунды не закрылся, то мета должна его закрыть форсированно.

А в данном случае получается, что мета не может закрыть адвайзер (хотя он и сам должен был спокойненько завершиться) и сама как то на него подвязывается, хотя эксперт адвайзер должен работать в отдельном потоке.

Artyom Trishkin:
Простите, а для чего вы инициализацию зацикливаете?

Можно ещё вилку из розетки выдернуть...

 Зацикливаюсь я для того, чтобы постоянно опрашивать свою длл-ку.

Это не важно где зацикливаться, можно зациклить и OnTick() например, ничего сташного в этом нет.

Можно и по таймеру работать.

Этим примером я просто хочу явно воспроизвести баг. Реальный адвайзер выглядит совсем по другому