Нужно ли сбрасывать личные настройки при обновлении терминала? - страница 2

 
Hochuh:
 Теперь то уже конечно все понятно, что делать - после все мы умные)). Правда какой ценой это приходит... Просто если я в МТ4 с такой проблемой не сталкивался, откуда ж мне знать, что здесь такая "забота" о клиенте вшита. Никаких скрытых угроз своим исходникам не видел, когда пользовательского болика(и др.) переделал на нормального и оставил ему то же имя. Он же пользовательский - значит что хочу с ним, то и ворочу. Кто ж знал о такой засаде. Я же и говорю - ЗАЧЕМ ТОГДА УДАЛЕНИЕ ПОЛЬЗОВАТЕЛЬСКИХ ИНДЮКОВ РАБОТАЕТ, если они потом с обновой восстанавливааются? Вот эта фигня в т.ч. и порождает проблемы у пользователей. Сделали бы как стандартные индюки не удаляемыми - и проблем у пользователей бы не было. А так... сделали называется хорошо. Придется на выходных опять голову ломать, писать.

Вообще-то, в четвёрке то же самое было.

И те же самые рекомендации - хочешь своего, копируй с другим именем и делай с ним, что хочешь

 
Hochuh:
 Теперь то уже конечно все понятно, что делать - после все мы умные)). Правда какой ценой это приходит... Просто если я в МТ4 с такой проблемой не сталкивался, откуда ж мне знать, что здесь такая "забота" о клиенте вшита. Никаких скрытых угроз своим исходникам не видел, когда пользовательского болика(и др.) переделал на нормального и оставил ему то же имя. Он же пользовательский - значит что хочу с ним, то и ворочу. Кто ж знал о такой засаде. Я же и говорю - ЗАЧЕМ ТОГДА УДАЛЕНИЕ ПОЛЬЗОВАТЕЛЬСКИХ ИНДЮКОВ РАБОТАЕТ, если они потом с обновой восстанавливааются? Вот эта фигня в т.ч. и порождает проблемы у пользователей. Сделали бы как стандартные индюки не удаляемыми - и проблем у пользователей бы не было. А так... сделали называется хорошо. Придется на выходных опять голову ломать, писать.

Тут главная проблема в системе безопасности Windows:

  • UAС блокирует изменения в локальных каталогах Program Files
  • фоновой маппинг каталогов для приложений, работающих внутри Program Files

В результате поведение программы сильно отличается, когда ее запускаешь под реально админскими (явно поднятыми) правами и обычными (даже базовыми админскими, не говоря уже о пользовательских). В одном случае начинает работать прямой доступ в каталоги, а в другом - автоматический маппинг операционкой  "для обеспечения совместимости".

К сожалению, MetaTrader 4 создавался в 2004 году, когда не было вопросов о жестких ограничениях для доступа в Program Files каталоги и сейчас приходится полностью подчиняться поведению операционки, которая может программно маппить/перемещать рабочие каталоги. С 509 билда мы уже реализовали обходной путь, когда после обновления не нужно будет перезапускать терминал, так как он будет принудительно запускаться с обычными правами. В результате не будет "потери настроек" из-за временной смены прав доступа.

MetaTrader 5, в отличие от МТ4, создавался сразу с учетом жестких требований к системе безопасности и явным образом самостоятельно хранит данные в ProgramData каталогах и у него меньше проблем с правами доступа.

 
stringo:

Вообще-то, в четвёрке то же самое было.

И те же самые рекомендации - хочешь своего, копируй с другим именем и делай с ним, что хочешь

Честно говоря в четверке не видел ни разу восстановления пользовательских индюков с обновлением терминала. Хотя и пользуюсь уже им 5 лет. Была только одна проблема, когда перешел на Win7, что еле нашел куда профили и индикаторы семерка заперла(на диске С в Local\VirtualStore, а не в Romaning\MetaQuotes, куда многие думают и где у меня пустые папки оказались - точнее МТ4 пустые, а МТ5 заполненные профилями, индюками, и пр.). Но эта проблема МТ4 и Win7 решилась установкой на локальный диск терминала - и теперь проблем никаких. Если я удалил пользовательский индюк, то я его удалил и с обновами он уже не возникает снова в прежней своей ипостаси. Хотя не знаю может это потому, что на локальном диске их нет в папке терминала, т.к. я закидывал туда только то, что мне нужно.

 

 Renat 2013.06.27 09:06  

Тут главная проблема в системе безопасности Windows:

  • UAС блокирует изменения в локальных каталогах Program Files
  • фоновой маппинг каталогов для приложений, работающих внутри Program Files

В результате поведение программы сильно отличается, когда ее запускаешь под реально админскими (явно поднятыми) правами и обычными (даже базовыми админскими, не говоря уже о пользовательских). В одном случае начинает работать прямой доступ в каталоги, а в другом - автоматический маппинг операционкой  "для обеспечения совместимости".

К сожалению, MetaTrader 4 создавался в 2004 году, когда не было вопросов о жестких ограничениях для доступа в Program Files каталоги и сейчас приходится полностью подчиняться поведению операционки, которая может программно маппить/перемещать рабочие каталоги. С 509 билда мы уже реализовали обходной путь, когда после обновления не нужно будет перезапускать терминал, так как он будет принудительно запускаться с обычными правами. В результате не будет "потери настроек" из-за временной смены прав доступа.

MetaTrader 5, в отличие от МТ4, создавался сразу с учетом жестких требований к системе безопасности и явным образом самостоятельно хранит данные в ProgramData каталогах и у него меньше проблем с правами доступа.

 Ренат, так с МТ4 вопросов то никаких. понятно, что это была не Ваша прихоть с правами, и засовыванием всех пользовательских настроек МТ фиг пойми куда. Но вот конкретно с МТ5 - нужно 1.либо убирать возможность удалять пользовательские индикаторы(ведь все равно они восстанавливаются с обновлением терминал), что бы потом не возникало ситуации, как у меня(переписывание моего исходника, на стандартный пользовательский из поставки МТ5 из-за того, что я не поменял имя изменив код). Не думаю, что я один с такой проблемой столкнулся. 2.Либо сделать, что бы они при обновах не восстанавливались. Ведь не все читают сотни страниц обсуждений, комментариев и прочих по терминалу, что бы знать о всех возможных проблемах.

 
Hochuh:

 

 Ренат, так с МТ4 вопросов то никаких. понятно, что это была не Ваша прихоть с правами, и засовыванием всех пользовательских настроек МТ фиг пойми куда. Но вот конкретно с МТ5 - нужно 1.либо убирать возможность удалять пользовательские индикаторы(ведь все равно они восстанавливаются с обновлением терминал), что бы потом не возникало ситуации, как у меня(переписывание моего исходника, на стандартный пользовательский из поставки МТ5 из-за того, что я не поменял имя изменив код). Не думаю, что я один с такой проблемой столкнулся. 2.Либо сделать, что бы они при обновах не восстанавливались. Ведь не все читают сотни страниц обсуждений, комментариев и прочих по терминалу, что бы знать о всех возможных проблемах.

Тут вообще-то есть правило: не трогать встроенные библиотеки кода, так как они полностью обновляются. Если кто-то меняет стандартные файлы, то ему надо сохранять их под другими именами и все будет нормально.

Советую пользоваться MQL5 Storage, реплицирую туда полный каталог MQL5. Это позволит не только откатываться на предыдущие версии, но и полностью держать изменение всех исходников под версионным контролем.

 
Renat:

Тут вообще-то есть правило: не трогать встроенные библиотеки кода, так как они полностью обновляются. Если кто-то меняет стандартные файлы, то ему надо сохранять их под другими именами и все будет нормально.

Советую пользоваться MQL5 Storage, реплицирую туда полный каталог MQL5. Это позволит не только откатываться на предыдущие версии, но и полностью держать изменение всех исходников под версионным контролем.

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

Наоборот, поддержание полной корректности кодовой базы(по сути SDK) является ожидаемым и правильным. Не трогайте просто каталог Examples и все.
Причина обращения: