Ошибки, баги, вопросы - страница 2442
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Не понимаю, почему не ясна задача: Если изменился советник - изменить название файла.
Вообще не понимаю проблемы.
Включить как ресурс исходник самого советника .mq5 файл и брать от него хеш.
Вообще не понимаю проблемы.
Включить как ресурс исходник самого советника .mq5 файл и брать от него хеш.
Так доступа (байты для вычисления хеша) к включенному EX5 не будет.
Так доступа (байты для вычисления хеша) к включенному EX5 не будет.
Все работает:
А при чем тут ex5, если вы говорили про изменение кода, которое лучше ослеживать по .mq5?
Такое впечатление что вы сами не понимаете, что в конечном итоге вам надо.
А при чем тут ex5, если вы говорили про изменение кода, которое лучше ослеживать по .mq5?
Такое впечатление что вы сами не понимаете, что в конечном итоге вам надо.Ну так написал же, куда же подробнее?
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
fxsaber, 2019.04.23 06:15
Есть такой советник
Когда делаю проход, пишется файл с одним и тем же названием. Это правильно.
Затем перекомпилирую, прописав вместо 123 число 456.
После этого каждый проход будет писать соответствующий один и тот же файл, но уже с другим названием.
Вот такой функционал и нужно как-то реализовать. Т.е. если EX5 поменялся, то и создаваемые им названия файлов меняются.
ЗЫ Использование макроса __DATETIME__ не подходит.
Есть mq5, который создает файл с Name1. Меняю какое-нибудь число в mq5. Должен генерироваться Name2. Поменял еще что-нибудь в коде - Name3. И т.д.
Ну так написал же, куда же подробнее?
Есть mq5, который создает файл с Name1. Меняю какое-нибудь число в mq5. Должен генерироваться Name2. Поменял еще что-нибудь в коде - Name3. И т.д.
Подключите исходник в формате .mq5 как ресурс и читайте хеш от содержимого исходника.
Если поменяете исходник, то при компиляции автоматом подтянется новый исходник в качестве ресурса и будет рассчитан новый хеш.
Что тут сложного?
Подключите исходник в формате .mq5 как ресурс и читайте хеш от содержимого исходника.
Если поменяете исходник, то при компиляции автоматом подтянется новый исходник в качестве ресурса и будет рассчитан новый хеш.
Что тут сложного?
Если в исходник добавлен комментарий, то от этого логика советника не меняется. Т.е. это один и тот же советник.
Вы и Игорь предлагаете наикостыльнейшие решения. Самое элементарное - дать хэш самого себя. Путь на самого себя дается. Хэш - по какой-то причине зажимается.Т.е. если EX5 поменялся, то и создаваемые им названия файлов меняются.
EX5 меняется при каждой компиляции. Почему тогда время компиляции не может служить уникальным именем?
Самое элементарное - дать хэш самого себя. Путь на самого себя дается. Хэш - по какой-то причине зажимается.
Ваша задача похожа на головоломку на форумах "по изучению защит ПО", обычно это звучит "как сделать запись исполняемого файла в другую папку после запуска"
обычно после запуска исполняемого файла операционка блокирует доступ к этому файлу до завершения работы приложения, думаю такая же ситуация и с исполняемым файлом .ex5 - пока он запущен к нему доступ запрещен
ЗЫ: я по другому не умею, меня так учили - дробить задачу на более мелкие, вот и предложил разнести на 2 модуля - один исполняемый, второй для записи в файлы, можно же и 3 модуля (библиотеки) подключить
обычно после запуска исполняемого файла операционка блокирует доступ к этому файлу до завершения работы приложения, думаю такая же ситуация и с исполняемым файлом .ex5 - пока он запущен к нему доступ запрещен
Нет, он в памяти. Файл можно даже удалить, работе не навредит.