Как обеспечить работу эксперта только на том чарте куда он был сброшен первый раз - страница 6

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
ForexTools:
поскольку объекты чарта и глобальные переменные должны переживать и перезапуски и перекомпиляции - проверка всегда сработает правильно. если только ручками не удалить или глобальную или объект из списка объектов - но это уже почти паранойя :)))
При падении терминала, графические объекты созданные в последней сессии не сохраняются. Поправьте, если не прав.
Да, не сохраняются. Но тут постановка задачи не полная. Нужно уточнять.
Если, например, нужно связать индикаторы - советник, то графический объект должны создавать индикаторы. Будет устойчивая к сбоям связка.
Если же нужно привязать просто к конкретному окну, скажем к определенному таймфрейму, то нужно дополнительно в качестве идентифицирующего признака использовать этот признак - таймфрейм.
Если же нужно вообще полная устойчивость к ядерным взрывам, то только запуск с параметрами командной строки поможет.
При падении терминала...
ну в ЭТОМ случае вообще ничего не гарантировано.
в принципе - решение с объектом меткой и глобальной переменной нормальное, с хорошей подстраховкой. оно не позволит запустится второй раз, ну а я уж поругаюсь сообщениями так чтобы я не забыл его удалить и второй раз ни при падениях ни при перезагрузке терминала не было двух копий ;)
Только глобальную переменную заменить чем понадежнее. А так вроде похоже.
Чем вам не нравятся глобальные переменные? Ну бывает они пропадают :) Даже будучи перезаписываемыми :))) Ну что вы хотите, такое изделие, наколенной лепки. Просто нужно учитывать это в алгоритме. Файлы кстати тоже могут пропадать при сбоях файловой системы.
Вариант 1 (для вменяемых пользователей): На запуске эксперта создавать глобальную переменую. Если на запуске обнаружена глобальная переменная, открывается окно сообщения "Тра ля ля... эксперт заблокирован, допускает один экземпляр, снимите лишний".
Вариант 2 (если услуги программирования оказываются пациентам психиатричекой клиники): PostMessageA(,WM_CLOSE,,); - убить окно с лишним экспертом.
Integer:
Вариант 2 (если услуги прграммирования оказываются пациентам психиатричекой клиники): PostMessageA(,WM_CLOSE,,); - убить окно с лишним экспертом.
Потому что мне нужна именно "рекомендация решения". именно это я просил в своем первом посте - поэтому и вашу идею воспринял именно так.
именно поэтому состоятельность многих "идей" вижу даже ДОТОГО как их..... ;)
если я не прав в отношении вас - напишите код эксперта который ничего не делает а только не дает запустится своей второй копии. проверьте что это действительно работает при перекомпиляциях и перезапусках терминала и запосьтьте сюда его код - все станет на свои места ;)
Слишком жестоко -- проще советники сделать в виде зацикленного скрипта -- эффект тот же. Блин, тогда перезапускать ручками придется... Все равно закрывать слишком жестоко :)
Закрывается оно конечно жестко, но ведь закрывается:)
если услуги программирования оказываются пациентам психиатричекой клиники
:)))))))
но тем не менее: создали глобальную переменную, второй запуск эксперта проверил ее наличие - не запустился. через минуту терминал упал но: глобальная переменная осталась.
при перезапуске терминала одна единственная копия проверяет ее наличие и НЕ запускается. так что объект на чарте все таки нужен чтобы опознать "свой чарт" и запуститься.
То есть вы предлагаете мне на вас поработать. А почему не называете цену?
Расслабьтесь ;)
на этом форуме я общаюсь с КОЛЛЕГАМИ по ремеслу. кто считает возможным мне помочь - помогает. кто хочет за свою помощь денег - пишет об этом и я решаю стоит мне платить или нет. были случаи (и неоднократно) когда я платил.
но кроме оплаты, для программиста есть еще интерес решать головоломки. вот я и подбросил одну из них. кто захотел - развлекся, потренировал думалку, кто не захотел - молча пошел читать другие темы.