Можно снять ограничение функции файловых операций?

 
В окне "Инструментарий" редактора MetaEditor для функции FileOpen читаем:
... файлы могут открываться только в папке каталог_терминала\experts\files (каталог_терминала\tester\files в случае тестирования эксперта) или ее подпапках...

Ограничение обходится использованием импорта функций системной библиотеки kernel32.dll. См. "MQL4: Файловые операции в MQL4 без ограничений"

Раз уж проблема решается, может снять приведеное выше ограничение?

Скажем, если имя файла не содержит путь, то пусть будет папка experts\files. А если содержит, то указанная в пути папка.
 
Нет. Это вопрос безопасности.

kernel32 и её функции можно перекрыть соответствующими галками в настройках.
 
Нет. Это вопрос безопасности.

kernel32 и её функции можно перекрыть соответствующими галками в настройках.

Представляете, первый раз встречаю ограничение на путь файловых операций. Дажу у пресловутой 1С такого нет. И ничего страшного не происходит. Наоборот, обмен через файлы довольно распространен.

Если считаете это вопросом безопасности, перекрывате импорт и файловые операции за пределами папки experts\files одновременно. А когда разрешаете импорт, то пусть одновременно будут разрешены и файловые операции за пределами папки experts\files. Всего то делов.
 
Нет. Это вопрос безопасности.

kernel32 и её функции можно перекрыть соответствующими галками в настройках.

Представляете, первый раз встречаю ограничение на путь файловых операций. Дажу у пресловутой 1С такого нет. И ничего страшного не происходит. Наоборот, обмен через файлы довольно распространен.

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

К тому же, это не Вы ли просили у людей "прислать мне файл accounts.ini из каталога терминала" - "Развод ! ? !?" ?

Понятно, что вопрос чужой безопасности для Вас - не вопрос.
 
К тому же, это не Вы ли просили у людей "прислать мне файл accounts.ini из каталога терминала" - "Развод ! ? !?" ?

Понятно, что вопрос чужой безопасности для Вас - не вопрос.



Я никого ни о чем не просил. Речь шла о том, что передача файла accounts.ini от инвестора трейдеру лучше, чем передача паролей. Безопаснее для инвестора. При передаче советника на Сервер Советников тоже можно вместо паролей выслать accounts.ini. Только и всего.
 
Это самообман - запрещать файловые операции за пределами "песочницы" при разрешенных DLL.

Если стоит галочка "Разрешить использование DLL", то что мешает разрешить файловые операции за пределами папки experts\files? Просто при необходимости использовать файловые операции придется подключать kernel32.dll и писать лишний код. Ни один нормальный программист не станет писать в "песочницу", а использует более удобный путь для файлов.

Если не стоит галочка "Разрешить использование DLL", то пусть файловые операции работают с "песочницей". А скорее всего вообще не будут использоваться. Так что лучше совсем запрещать любые файловые операции параллельно с запретом на использование DLL.

Или можно добавить в настройку ещё одну галочку "Разрешить файловые операции".

По поводу скриптов ... Можно записать файл скрипта файловой операцией MQL4 на диск. Но чтобы его запустить, нужно использовать фунцию системной библиотеки Shell32.dll. Т.е. иметь разрешение на использование DLL. А если есть разрешение использовать DLL, то лучше использовать функции системной библиотеки Kernel32.dll. Следовательно файловые операции MQL4 для этого вообще не требуются.

Это то хоть понятно? Неужели Вы думаете, что разработчи MS Office, или, скажем, 1С, тупее паровоза? Никто же не носится с файловыми операциями, как курица с яйцом. Кроме, не будем показывать пальцем кто ...
 
К сожалению, Вы совершенно не думаете о безопасности, а все гнете под себя.

Стандартного выхода за пределы песочницы файловых операций ни в коем случае не будет. Без исключений. Предлагаю больше эту тему не поднимать.
 
К сожалению, Вы совершенно не думаете о безопасности, а все гнете под себя.

Стандартного выхода за пределы песочницы файловых операций ни в коем случае не будет. Без исключений. Предлагаю больше эту тему не поднимать.

Нет так нет. Я то смогу обойти ограничение. А начинающие пусть попрыгают.