MetaTrader 5 поддерживает отправку файлов на FTP-сервер. Для работы этой возможности следует ввести необходимые реквизиты FTP в диалоге настроек на закладке FTP: адрес FTP-сервера, логин, пароль и опционально путь размещения файлов на сервере. Если ваш компьютер находится в сети провайдера, который не выделил для вас публичный IP-адрес, то, вероятно, потребуется включить пассивный режим.
Непосредственно отправку файлов из MQL-программы обеспечивает функция SendFTP.
bool SendFTP(const string filename, const string path = NULL)
Функция посылает файл с указанным именем на FTP-сервер из настроек терминала. При необходимости можно указать другой путь, отличный от настроенного заранее. Если параметр path не указан, используется каталог, описанный в настройках.
Отсылаемый файл должен находиться в папке MQL5/Files или ее подпапках.
Функция возвращает признак успеха (true) или ошибки (false). Потенциальные ошибки в _LastError:
Функция блокирует выполнение MQL-программы до тех пор, пока операция не завершится. В связи с этим функцию запрещено использовать в индикаторах.
Также функция SendFTP не выполняется в тестере стратегий.
Терминал поддерживает только отправку отдельно взятого файла на FTP-сервер — все другие FTP-команды недоступны из MQL5.
Пример скрипта NetFtp.mq5 делает скриншот текущего графика и пытается отправить его по FTP.
void OnStart()
|