Войти

Показать полную графическую версию : Отправка файла по FTP


Yarr70
07-09-2014, 23:55
Требуется помощь, нужен скрипт для отправки файла по ftp, честно говоря даже не знаю с чего начать.

Iska
08-09-2014, 00:14
честно говоря даже не знаю с чего начать. »
С изучения документации: User Defined Functions (https://www.autoitscript.com/autoit3/docs/libfunctions/FTPEx%20Management.htm).

Yarr70
08-09-2014, 08:03
Спасибо, ссылка очень полезная, но может есть готовый фрагмент кода с примером простой отправки одиночного файла.

madmasles
08-09-2014, 08:14
но может есть готовый фрагмент кода с примером простой отправки одиночного файла. »Вбейте в строку поиска Google _FTP_FilePut site:autoit-script.ru, поиск выдаст Вам кучу примеров.

Yarr70
09-09-2014, 16:42
Выбрал для реализации такой код.

#Include <FTPEx.au3>

$server = "****"
$login = "****"
$password = "****"

$filepath = "F:\test001.txt"
$ftppath = "/test001.txt"

$hOpen = _FTP_Open('Total Commander (UTF-8)')
If not $hOpen Then
ConsoleWrite("Не могу открыть фтп сессию" & @CRLF)
Exit
EndIf

$hConn = _FTP_Connect($hOpen, $server, $login, $password)
If not $hConn Then
ConsoleWrite("Не могу подключиться к ftp серверу" & @CRLF)

Exit
EndIf

If not _FTP_FilePut($hConn, $filepath, $ftppath) Then
ConsoleWrite("Не могу закачать файл на ftp сервер" & @CRLF)
ConsoleWrite($hOpen & @CRLF)
ConsoleWrite($hConn & @CRLF)
ConsoleWrite($filepath & @CRLF)
ConsoleWrite($ftppath & @CRLF)
_FTP_Close($hOpen)
Exit
EndIf

ConsoleWrite("Файл успешно закачан на фтп сервер" & @CRLF)

_FTP_Close($hOpen)

присоединяется, открывает сессию, но закачка не удается, что не так?

madmasles
09-09-2014, 22:03
Yarr70,
Попробуйте использовать пассивный режим (в функции _FTP_Connect установить $i_Passive = 1).

Yarr70
09-09-2014, 23:01
Супер, все сработало как надо, спасибо огромное. Приятно быть услышанным.




© OSzone.net 2001-2012