DLL в папке Libraries или в папке с индикатором

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
pivalexander
299
pivalexander  
если импортированная DLL лежит в папке Libraries, то сама DLL блокируется при работе индикатора, а если в папке с индикатором, то все работает но DLL не блокируется, в чем отличие?
Ihor Herasko
21050
Ihor Herasko  
pivalexander:
если импортированная DLL лежит в папке Libraries, то сама DLL блокируется при работе индикатора, а если в папке с индикатором, то все работает но DLL не блокируется, в чем отличие?

Блокировка - это что? Как она проявляется?

pivalexander
299
pivalexander  
Ihor Herasko:

Блокировка - это что? Как она проявляется?

DLL из папки Libraries ни удалить ни переместить

Slava
Модератор
13446
Slava  
pivalexander:

DLL из папки Libraries ни удалить ни переместить

Пока индикатор работает.
pivalexander
299
pivalexander  
Slava:
Пока индикатор работает.

Не разблокируется даже при закрытии графика с индикатором в папке Libraries, а вот в папке с индикатором не блокируется вообще, в МТ4, в МТ5 не проверял еще

Mikhail Dovbakh
6921
Mikhail Dovbakh  
pivalexander:

Не разблокируется даже при закрытии графика с индикатором в папке Libraries, а вот в папке с индикатором не блокируется вообще, в МТ4, в МТ5 не проверял еще

A в чем проблема?

Используйте то расположение, которое вам нужно.

Ihor Herasko
21050
Ihor Herasko  
pivalexander:

Не разблокируется даже при закрытии графика с индикатором в папке Libraries, а вот в папке с индикатором не блокируется вообще, в МТ4, в МТ5 не проверял еще

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

  1. Директория из которой был запущен модуль, импортирующий dll. Под модулем понимается эксперт, скрипт, индикатор или библиотека EX5;
  2. Директория каталог_данных_терминала\MQL5\Libraries ( TERMINAL_DATA_PATH\MQL5\Libraries);
  3. Директория, из которой был запущен клиентский терминал MetaTrader 5;
  4. Системная директория;
  5. Директория Windows;
  6. Текущая директория;
  7. Директории, перечисленные в системной переменной PATH.
pivalexander
299
pivalexander  
Ihor Herasko:

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

    Все удалял и проверял

    Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий