Где хранится список идентификаторов? - страница 3

 
Нет не правильно, я глупость сказал
 
Vladimir Karputov:

У Вас слишком нестандартный вопрос. Для чего такое нестандартное поведение? Зачем Вам служебная информация?

Ну Вы загнули... Еще скажите, что данная информация составляет государственную тайну...

Зачем это мне, слишком долго объяснять. Скажу проще: есть необходимость переименовать данную папку с коротким именем (не более 3-х символов). Но в этом случае терминал перестает "видеть" свои файлы. Поэтому и есть необходимость исправить это там, где хранится название папки. Не понимаю, зачем такие "тайны мадридского двора" там, где в этом нет никакой необходимости.

 
TerminalInfoString(TERMINAL_PATH);
TerminalInfoString(TERMINAL_DATA_PATH);
Может, поможет?
 

Да нет, не поможет. Нужно найти, где физически записано название папки. Похоже заныкано глубоко. Причем у меня ссылки на индикаторы по этому адресу уже в реестре прописаны, здесь: HKEY_CURRENT_USER\Software\MetaQuotes Software\MetaEditor\Recent File List.

Терминал уже наследил везде, поэтому даже изменив название папки, можно нарваться на новые неприятности.

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

необязательно, если путь папки вычисляемый.

в реестре этих папок нет
 
Aleksei Stepanenko:

Да нет, не поможет. Нужно найти, где физически записано название папки. Похоже заныкано глубоко. Причем у меня ссылки на индикаторы по этому адресу уже в реестре прописаны, здесь: HKEY_CURRENT_USER\Software\MetaQuotes Software\MetaEditor\Recent File List.

Терминал уже наследил везде, поэтому даже изменив название папки, можно нарваться на новые неприятности.

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

100%, что то связано с этой записью в реестре

разбираться до точки не вижу смысла

запись появляется после запуска метаэдитора


 
Renat Akhtyamov:

100%, что то связано с этой записью в реестре

разбираться до точки не вижу смысла

запись появляется после запуска метаэдитора


Достаточно зайти в реестр по данному адресу, чтобы убедиться в том, что там ничего нет (из того, что меня интересует).
 
Сергей:
Достаточно зайти в реестр по данному адресу, чтобы убедиться в том, что там ничего нет (из того, что меня интересует).

если Вам нужны файлы именно там, где они нужны Вам, пользуйте /portable версию терминала или(рекомендую) примените команду, создающую символическую ссылку: mklink/D

например: mklink/D C:\Users\User\AppData\Roaming\MetaQuotes\Terminal\09890B5A0607F1589B7B1482080BB3E8\MQL4\Files B:\

перед запуском команды в командной строке под правами администратора, папка ....\Files или другая необходимая перемещается в требуемое место или папку

---

плюсом, когда мне нужно сильно, практически на каждом тике поиздеваться над файлом, создаю и работаю с файлами в оперативной памяти  компьютера, чтобы не насиловать жесткий диск, с помощью программы RAMDISK

пользоваться этой программой нужно осторожно, понимая, что файлы нужно сохранять,

потерять их легко, т.к. они находятся в оперативке

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