Проверить наличие файла библиотеки

 

Приветствую.

Возможно ли без использования DLL проверить наличие файла в MQL5\Libraries\ ?

 
Oleksii Chepurnyi:

Приветствую.

Возможно ли без использования DLL проверить наличие файла в MQL5\Libraries\ ?

В кодах @fxsaber по-моему есть считывание всех каталогов. Поищите в его работах.

 
Oleksii Chepurnyi:

Приветствую.

Возможно ли без использования DLL проверить наличие файла в MQL5\Libraries\ ?

А FileIsExist не работает?

 
Artyom Trishkin:

В кодах @fxsaber по-моему есть считывание всех каталогов. Поищите в его работах.

Спасибо! Посмотрю.

prostotrader:

А FileIsExist не работает?

Она же смотрит только в "песочнице"...

 

Возможно, стоит переформулировать задачу. Тогда может пригодиться вшивание нужных библиотек в EX5 через ресурсы. Сам не пробовал.


ЗЫ Как альтернатива, через mklink сделать зеркало в песочнице, которое ведет в MQL5-папку. Тогда будет все доступно. Единственное, это опасно для тех, кто попытается получить файлы всей песочницы - получится бесконечная рекурсия. Поэтому лучше зеркало делать не на MQL5-папку, а не любую подпапку. Например, MQL5\Libraries\.

 
fxsaber:

Возможно, стоит переформулировать задачу. Тогда может пригодиться вшивание нужных библиотек в EX5 через ресурсы. Сам не пробовал.


ЗЫ Как альтернатива, через mklink сделать зеркало в песочнице, которое ведет в MQL5-папку. Тогда будет все доступно. Единственное, это опасно для тех, кто попытается получить файлы всей песочницы - получится бесконечная рекурсия. Поэтому лучше зеркало делать не на MQL5-папку, а не любую подпапку. Например, MQL5\Libraries\.

Задача довольно простая, есть файл - обращаемся к функции, нету - не обращаемся :)

Если бы для себя, можно и хардлинк сделать, но пользователи врядли этим будут заниматься :)

 
Oleksii Chepurnyi:

Задача довольно простая, есть файл - обращаемся к функции, нету - не обращаемся :)

Тогда через ресурсы библиотеки подцепить. Будут всегда у пользователя в актуальном состоянии.

 
fxsaber:

Тогда через ресурсы библиотеки подцепить. Будут всегда у пользователя в актуальном состоянии.

Если имеете в виду скомпилировать вместе с библиотекой, то нет. В данном случае отсутствие файла - норма. Просто при наличии этого файла будет расширен функционал советника.

 
Oleksii Chepurnyi:

Если имеете в виду скомпилировать вместе с библиотекой, то нет. В данном случае отсутствие файла - норма. Просто при наличии этого файла будет расширен функционал советника.

#resource "\\Libraries\\Library.ex5";
 
fxsaber:

Нет, библиотека должна быть отдельно от советника.

 
Oleksii Chepurnyi:

Нет, библиотека должна быть отдельно от советника.

Даже если будет возможность определить наличие файла в этой папке, это не будет гарантировать, что файл является нужной библиотекой, а не пустышкой.