Переменная HistoryHandle объявлена в библиотеке. Ее значение недоступно скрипту.
Исправить можно путем передачи handle в скрипт (возвратом значения функцией), а при вызове функций savebar и deinitSyntBar передавать им handle по значению.
Не помогло ...... (
И handle и last_fpos (для чистоты эксперимента) получил из первой функции и передал по значению дальше ... НО Результат тот же !!!!!
Есть ещё идеи?
Кстати насколько я понимаю, несмотря на то что Переменная HistoryHandle объявлена в библиотеке, и ее значение недоступно скрипту, оно остаётся доступно другим функциям, вызываемым из этой библиотеки этим же экземпляром скрипта т.к. фунции запускаются в одном потоке...
ИЛИ я не прав?
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте.
Все файлы сделаны для проверки данной ситуации.
Есть скрипт HST_Check.mq4 :
Все три функции:
вызываются по очереди из полностью одинаковых файлов:
1 вар.) Libraries\HST_Lib.mq4 (через Include\HST_Lib.mqh естественно)
2 вар.) Include\ HST_Inc.mqh ( (отсутствует #property library в отличии от первого варианта)
1 вар. видает
т.е. Функция "FileWriteStruct" вроде как записывает в файл 4294967295 байт НО на самом деле ничего не записывает. В файле есть только заголовок. И ошибок нет
2 вар. видает
т.е записывается 60 байт - полная длина структуры MqlRates (как и должно быть) и запись происходит на самом деле.Из за чего это может разница в поведении ?
Все файлы прикреплены.