Ошибки, баги, вопросы - страница 2233
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
попробуйте после открытия файла на запись (часть 1 кода) просмотреть его виндовым просмотрщиком. будет хотя бы понятно с каким хендлом проблема.
если откроет - со вторым, если нет - с первым.
Винда то первый файл открывает. Вижу на уровне системы, что установлены флаги read, write, share_read. Однако в терминале открытие того же файла на чтение выдает 5004. Первым советником в файл производится запись, т.е. он не просто для проформы открыт с какими-то флагами.
Когда будет время, попробую сделать скрипт для демонстрации. Но судя по тому, что я уже не первый про это пишу, и никаких наворотов, связанных с файлами, в коде нет, кривизна присутствует.
PS. Может кто уже писал в СД? Какие есть ответы?
Строго говоря ошибка связана с одновременным вызовом FileOpen( filename ) из разных советников (флаги роли не играют)
Винда то первый файл открывает.
Объясните что такое искуственно созданная ошибка? Я не понимаю этой фразы
Ни какого срытого подтекста в моих словах нет. Вы наверное понимаете что такое искусственная кожа. Ориентируйтесь на это понимание.
Покажите код без дополнительных манипуляций с применением шаблонов и прочих танцев с бубнами, который возвращает ошибку ERR_CANNOT_OPEN_FILE при флагах FILE_SHARE_READ|FILE_SHARE_WRITE
Если без танцев с бубнами ошибка не воспроизводится, значит ошибка вызвана во время танцев...
Повторяю последовательность действий:
Советник 1:
В OnInit бинарный файл открыт для записи.
Каждую минуту пишет в файл открытие текущего бара.
Файл закрывается ТОЛЬКО в OnDeinit.
Советник 2:
Каждую минуту открывает этот бинарный файл.
Читает последнюю запись, печатает её.
Закрывает файл.
И так повторяет каждую минуту.
При этом не возникает никаких ошибок открытия файла.
Вот на это простом скрипте, запущенном сперва с writing = true, а потом на другом чарте с writing = false, получаю ошибку.
Насколько я помню, там настраивается тайм-аут, после которого цена считается безнадежно устаревшей. То есть если не менялась 3 минуты, то открываться по ней нельзя.
Написал тестовый скрипт этого дела. Словил NoPrice через 64 секунды, как пришел последний тик. Возможно, минутный таймаут, действительно, стоит. Помониторю...
Вот на это простом скрипте, запущенном сперва с writing = true, а потом на другом чарте с writing = false, получаю ошибку.
Явно баг, т.к. с подобными флагами сторонние приложения файл читают без проблем.
PS. Может кто уже писал в СД? Какие есть ответы?
Я писал два года назад - заявка без движения. Напишите еще раз пожалуйста
Какой номер заявки?