Ошибки, баги, вопросы - страница 971

 
Как узнать установленный интервал тестирования из OnTester()?
 
nasdaq:
Как узнать установленный интервал тестирования из OnTester()?

Конечную дату тестирования сразу можно узнать в OnTester.

Начальную дату нужно запоминать в OnInit.

Используйте функцию TimeCurrent

Документация по MQL5: Дата и время / TimeCurrent
Документация по MQL5: Дата и время / TimeCurrent
  • www.mql5.com
Дата и время / TimeCurrent - Документация по MQL5
 

Столкнулся со странной ситуацией

Сегодня при подключении к серверу перестало работать подключение именно с USB модема билайн

С других каналов (релейный и наземный DSL) работают успешно

193.219.127.76:4443

причем в обоих случаях телнет на этот адрес + порт проходит (сессия открывается)

трассировка умирает на какой то паре IP (зацикливается) тоже в обоих случах

пинг вообще говорит 

Ответ от 195.16.37.33: Превышен срок жизни (TTL) при передаче пакета.
Ответ от 195.16.37.33: Превышен срок жизни (TTL) при передаче пакета.
Ответ от 195.16.37.33: Превышен срок жизни (TTL) при передаче пакета.
Ответ от 195.16.37.33: Превышен срок жизни (TTL) при передаче пакета.

это с билайна

Обмен пакетами с 193.219.127.76 по с 32 байтами данных:
Ответ от 193.219.127.225: Превышен срок жизни (TTL) при передаче пакета.
Ответ от 193.219.127.225: Превышен срок жизни (TTL) при передаче пакета.
Ответ от 193.219.127.225: Превышен срок жизни (TTL) при передаче пакета.
Ответ от 193.219.127.225: Превышен срок жизни (TTL) при передаче пакета.

это с другого канала но с него терминал видит соединение

Звонил в билайн сказали что выключить модем они типа там чего то пошаманят и минут через 10 включить - не помогло

Хотя к примеру сервер MetaQuotes demo видит и соединяется с ним.

Что то у меня закончилось воображение, что дальше делать то?
 
Как определить во время оптимизации, участок форвард сейчас или нет?
 

Объясните, пожалуйста, где моя ошибка? Почему приложенный код рисует картинку (OBJ_BITMAP_LABEL) только в режиме COLOR_FORMAT_XRGB_NOALPHA? Вместе с COLOR_FORMAT_ARGB_NORMALIZE ничего не показывает.

void OnStart() {
  uint Canvas[];
  uint ImgWidth = 250;
  uint ImgHeight = 100;
  long chart_id = ChartID();
  ArrayResize(Canvas, ImgWidth * ImgHeight);
  ArrayInitialize(Canvas, 0);
  for (int i = 0; i < ArraySize(Canvas); i++)
    Canvas[i] = i;
  if (ObjectCreate(chart_id, "Test", OBJ_BITMAP_LABEL, 0, 0, 0)) {
    ObjectSetString(chart_id, "Test", OBJPROP_BMPFILE, "::Test");
    ResourceCreate("::Test", Canvas, ImgWidth, ImgHeight, 0, 0, ImgWidth, COLOR_FORMAT_XRGB_NOALPHA);
    ChartRedraw(chart_id);
    Sleep(3000);
    ObjectDelete(chart_id, "Test");
  }
}
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов - Документация по MQL5
Файлы:
Test.mq5  9 kb
 
voix_kas:

Объясните, пожалуйста, где моя ошибка? Почему приложенный код рисует картинку (OBJ_BITMAP_LABEL) только в режиме COLOR_FORMAT_XRGB_NOALPHA? Вместе с COLOR_FORMAT_ARGB_NORMALIZE ничего не показывает.

а у вас действительно 32 битная картинка?
 
sergeev:
а у вас действительно 32 битная картинка?
К сожалению, не понял Ваш вопрос. В качестве буфера используется массив uint (4 байта, 32 бита).
 

В общем, есть небольшие пробелы в знаниях. 32-битный цвет представлен в виде 0x00BBGGRR, где первые "00" - есть альфа-канал.

Пример, берём цвет clrRed, хотим его сделать полупрозрачным, дописываем в первые два разряда значение 127 (7F). Очевидно, это делается побитовыми операциями. К сожалению, я не знаю данной темы. Пока попробую изучить. Может быть, у кого есть готовый простенький код для конвертации?

 

Странно. Выполняю операцию 0xFF000000 + clrBlue, даёт красный цвет.

Синий - 0x00FF0000. Прибавляю 0xFF000000. Результат 0xFFFF0000. Но почему красный цвет выводит вместо синего?!

 
Съэкономлю время, если кто будет задаваться таким вопросом. Используйте штатную функцию ColorToARGB().
Причина обращения: