Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
я ж написал, что CMemMapFile::Open возвращает код ошибки или 0 когда ошибки нет
В начале беседы я выкладывал скрин первоначально там было то что возвращает функция CMemMapFile::Open
это был 0 как будто ошибки нет.
Потом я исправил чтобы посмотреть хэндл не равен ли он NULL
и в результате получил
2016.03.04 19:00:00.897 BuyNow Client v 1.03 USDCHF.m,M5: BuyNow Client v 1.03.mq4, handle=8589934592
Ошибки нет , есть хэндл что тебе еще надо скажете вы... но файловое отображение никто не создавал... И открыть не созданное не возможно.
Или может быть такое отображение кем-то другим создано и я об этом не знаю ???
Какая-то программа создает отображение с таким точно именем :-)
Dmitry Luck'janenko:
Или может быть такое отображение кем-то другим создано и я об этом не знаю ???
Какая-то программа создает отображение с таким точно именем :-)
ну вы же перед этим сами создали что то )
винда просто так с памятью работает. Ничего не чистит сразу. Поэтому и данные старые могут висеть и открываться.
Но когда идет перезапись, то уже не откроет. Вы вероятно не делали ничего между открытиями.
Превосходная библиотека, использовал вкупе с мьютексами для написания локального копировшика
В качестве Важной составляющей для приемника получал размер файла и от него строил цикл,
обнаружилось несколько косячков - из-за которых то ArrayOutOfRange, то нехватка 4х байтов
Поправил
Если создавать MMF через MQL5 и писать туда,а потом читать.
То все хорошо.А если я создал MMF другой программой,то при попытке записать или считать оттуда-вылетает критическая ошибка.
В чем проблема?
Если создавать MMF через MQL5 и писать туда,а потом читать.
То все хорошо.А если я создал MMF другой программой,то при попытке записать или считать оттуда-вылетает критическая ошибка.
В чем проблема?
Клуб телепатов напряженно пытается угадать номер крит. ошибки.
Клуб телепатов напряженно пытается угадать номер крит. ошибки.
Сообщение MT5 об критической ошибке без указания кода ошибки.Если был бы код,то указал бы.
То все хорошо.А если я создал MMF другой программой,то при попытке записать или считать оттуда-вылетает критическая ошибка.
В чем проблема?
- проверить нет ли ошибок при открытии файла
- проверить доступный выделенный объем для чтения/записи во всех функциях работы с массивами/строками(учесть 2 байта)
и т.д.
Проблема решена.
Нужно писать и считывать сторонним приложением файлы MMF начиная с 4 байта,а не с 0.
А для MT5 4 байта не учитываются.Даже если 0-вое смещение.
Поэтому когда сторонняя программа у меня записывала с 0 байта,то при попытке прочитать MT5 вылетала ошибка.
Проблема решена.
Нужно писать и считывать сторонним приложением файлы MMF начиная с 4 байта,а не с 0.
А для MT5 4 байта не учитываются.Даже если 0-вое смещение.
Поэтому когда сторонняя программа у меня записывала с 0 байта,то при попытке прочитать MT5 вылетала ошибка.