Маленькое уточнение, что уже сравнительно давно все версии Windows за исключением редких, которые особо помечены как Single Language, позволяют добавлять и менять язык системного интерфейса через настройки. Но в любом случае, вряд ли это то, чего хотел автор вопроса ;-).
Суть в том, что для любого индикаторного хендла (здесь берем самого себя, но это для простоты) вызов CopyBuffer происходит успешно на 1 большее число раз, чем количество буферов в индикаторе. В данном случае, индикатор безбуферный и вызов CopyBuffer должен завершаться ошибкой. Кроме того возвращаются какие-то данные с потолка.
ИМХО, это баг или расскажите мне, в чем здесь логика.
Столкнулся сегодня с такой штукой.
Лэнгвидж установлен в инглиш.
Версия 5226.
Поставьте английскую Windows
Столкнулся сегодня с такой штукой.
Лэнгвидж установлен в инглиш.
Версия 5226.
это всегда так было.
Поставьте английскую Windows
Маленькое уточнение, что уже сравнительно давно все версии Windows за исключением редких, которые особо помечены как Single Language, позволяют добавлять и менять язык системного интерфейса через настройки. Но в любом случае, вряд ли это то, чего хотел автор вопроса ;-).
Проверьте пожалуйста у себя - вот такой тестовый минимальный индикатор роняет МТ5 без всяких сообщений и логов:
Есть подозрение, что глюк случается только при наличии групп во входных параметрах.
ЗЫ. Кстати, после этого невозможно отлаживаться, т.к. перезапущенный МТ5 при попытке запуска программы пишет в лог:
Нужно перезапускать и ME.Проверьте пожалуйста у себя - вот такой тестовый минимальный индикатор роняет МТ5 без всяких сообщений и логов:
b5232 - подтверждаю поведение.
b5232 - подтверждаю поведение.
Ещё есть предположение (м.б. уже писали), что не хватает чего-то типа элемента TYPE_GROUP в перечислении ENUM_DATATYPE для поля MqlParam::type.
Ещё есть предположение (м.б. уже писали), что не хватает чего-то типа элемента TYPE_GROUP в перечислении ENUM_DATATYPE для поля MqlParam::type.
Наверное, пригодился бы пример для демонстрации целесообразности.
Проверьте пожалуйста у себя такой тестовый минимальный индикатор:
Суть в том, что для любого индикаторного хендла (здесь берем самого себя, но это для простоты) вызов CopyBuffer происходит успешно на 1 большее число раз, чем количество буферов в индикаторе. В данном случае, индикатор безбуферный и вызов CopyBuffer должен завершаться ошибкой. Кроме того возвращаются какие-то данные с потолка.
ИМХО, это баг или расскажите мне, в чем здесь логика.