Решение проблем с последним билдом MT5

6 апреля 2024, 19:16
Maxim Kuznetsov
1
43

В новом билде прилетело такое, что перестали работать решения которым больше 6-ти лет.

Ни одна версия ATcl НЕ РАБОТАЕТ в новом билде. Наверняка и другие тоже поотваливались, сижу проверяю

Чтобы хотя-бы отчасти решить проблему - надо будет руками прописать всё то что DLL делала сама при старте.

Надо указать дополнительные переменные окружения:

это если ATcl вы ставили по рекомендому пути C:/ATcl

то есть надо добавить 3 переменных окружения и в переменную PATH добавить c:/ATcl/bin

по шагам диалогов с виндовс это вот так:


НЕ ЗНАЮ, какой смысл запрещать изменять текущее окружение процесса, но вот так видимо они кто-то решил

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

Теперь вот нет, только в рукопашную...

Позже в инсталлятор добавлю создание этим переменных при установке. Хотя это не вполне верно - переменные run-time, а вписаны будут прямо в профиль пользователя. 

PS/ Ставить эти переменные в профиль, это не самое лучшее решение - оно потенциально провоцирует конфликт версий, если у пользователя есть другие версии Tcl (или Maxima или GnuPlot или несть им числа, кто его с собой таскает) или есть mingw старой/другой версии..  

но пока другого способа нет. 

инициализация путей и переменных, то что внутри DLL аккуратно проверяется и выставляется , выверенное за несколько лет, больше не работает. СПАСИБО ОФИГЕННОЕ