Можно ли запоминать и восстанавливать параметры скрипта?

 

При сбросе скрипта на график все его параметры принимают значения по умолчанию. Если нажать кнопку Сохранить - то измененные параметры можно сохранить в файл и потом считать их. Но это долго и муторно.

Вопрос: знает ли кто нибудь способ автоматического сохранения и восстановления значений из предыдущего запуска, без ручного выбора файла и загрузки параметров из него.

Например - скрипт открытия ордера. по умолчанию в нем прописан лот 0.1 но, например, я начал работу на микрореале и теперь каждый раз приходится вбивать ручками 0.01. Речь идет о ситуации, в которой нужно обойтись без перекомпиляции скрипта. Такой себе Autoexec.bat сотворить-бы ;)

Глобальные переменные не очень подходят - хочется иметь возможность в любой момент (пере)запомнить новые значения "по умолчанию".

 

пример плохой, потому что по умолчанию должно стоять ноль и при инициализации переопределяться в минлот..

а чем плохо писать параметры, с которыми скрипт отработал в файл, реестр наконец ?

для использования сохраненных параметров нужны еще параметры для использования ранее сохраненных значений и перезаписи новыми и их придется переключать время от времени ..

 
ForexTools писал(а) >>

Такой себе Autoexec.bat сотворить-бы ;)

Так а что мешает? Скрипт, как и советник может легко прочитать данные из файла.
 
ForexTools >>:

При сбросе скрипта на график все его параметры принимают значения по умолчанию. Если нажать кнопку Сохранить - то измененные параметры можно сохранить в файл и потом считать их. Но это долго и муторно.

Вопрос: знает ли кто нибудь способ автоматического сохранения и восстановления значений из предыдущего запуска, без ручного выбора файла и загрузки параметров из него.

Например - скрипт открытия ордера. по умолчанию в нем прописан лот 0.1 но, например, я начал работу на микрореале и теперь каждый раз приходится вбивать ручками 0.01. Речь идет о ситуации, в которой нужно обойтись без перекомпиляции скрипта. Такой себе Autoexec.bat сотворить-бы ;)

Глобальные переменные не очень подходят - хочется иметь возможность в любой момент (пере)запомнить новые значения "по умолчанию".

сохранять в cvs файл и каждой ячейке назначить определенное значение - перед закрытием сохранять, а когда эксперт(скрипт) открывается, то читать из файла данные и присваивать

все через FileOpen

 
Перекомпиляция самого себя? Муторно, но должно прокатить.
 
Roger >>:
Так а что мешает? Скрипт, как и советник может легко прочитать данные из файла.

Главная идея в диалоговом назначении новых значений и их запоминании. Задавая параметры в окне при старте скрипта я потом легко могу сохранить их в файл или глобальные переменные. Трабла наступает при следующем запуске скрипта. Давайте по шагам:

1) по умолчанию лот (или любой другой параметр) = 0.1

2) я запускаю скрипт меняю это значение на 0.01

3) скрипт пишет это значение в файл и (сделав чтото полезное) заканчивает свою работу

4) я снова запускаю скрипт. он стартует и показывает в своих параметрах все тоже самое значение по умолчанию 0.1. До чтения сохраненных на диске данных он доберется только когда я "запущу его на выполнение". после этого он сможет прочитать сохраненные 0.01 но, вот беда, - отобразить их для правки и установки нового значения (или просто напоминания старого) уже негде т.к. окно с параметрами уже ушло.

Вобщем хочу чтобы у скриптов было так же как у экспертов - у них значения между вызовами их параметров по F7 - сохраняются.

 

не, тебе надо, чтобы при запуске скрипт считывал данные из файла и работал с ними, а сохранять надо перед закрытием (точнее просто тупо перезаписывать последнее установленное значение)

"значение по умолчанию" имеется в виду определенная глоб переменная?

 
ForexTools писал(а) >>

Вобщем хочу чтобы у скриптов было так же как у экспертов - у них значения между вызовами их параметров по F7 - сохраняются.

а кто мешает вызывать по старту скрипта DLL-ку с окошком? пусть вызывает окошко, которое считывает из файлика настройки/параметры (запомненные при предыдущем запуске). можно окошко в динамике строить по числу и типу параметров вообще.

 
Shu >>:

а кто мешает вызывать по старту скрипта DLL-ку с окошком?

только желание обойтись без сторонних длл, но судя по всему другого решения нет в принципе

 
ForexTools >>:

только желание обойтись без сторонних длл, но судя по всему другого решения нет в принципе

Родными языковыми средствами нет. Перекомпиляцию можно делать пользуя только системные дллки.

 
ForexTools >>:

Главная идея в диалоговом назначении новых значений и их запоминании.

Вот именно этой проблемой я начинал когда-то заниматься и пока безуспешно, о чем написал в соседней вашей ветке. Есть для начала внешний экзешник, который пытается прочитать значения текстовых полей из контролов любого приложения. Из листвью МТ4 приходит мусор (возможно нужно перекодировать из вайдчар или что-то в таком роде), но самое странное, что после закрытия моего тестового экзешника, терминал падает, хотя никаких там модификаций не делаю - ;-) для начал б прочитать текст.
Причина обращения: