Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.92/26: Рейтинг темы: голосов - 26, средняя оценка - 4.92
619 / 218 / 51
Регистрация: 22.11.2010
Сообщений: 1,781
Записей в блоге: 3

Передача файлов по FTP

15.07.2015, 20:42. Показов 5979. Ответов 36
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Все привет. Код соединения и передачи файла на FTP-сервер
C++
1
2
3
4
5
 IdFTP1->Host = "хост фтп"; 
   IdFTP1->Username = "Логин";
   IdFTP1->Password = "Пароль";   
   IdFTP1->Connect(); 
   IdFTP1->Put("C:\\Text.txt", "MyFile/Text.txt", false);
При нажатии на кнопку выдает File transfer failed.
Среда RAD studio XE5
Что ему мешает?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.07.2015, 20:42
Ответы с готовыми решениями:

Передача данных с ftp
Может кто-то чем поможет... В определённой папке на ftp-сервере находятся данные (jpg). Внутри папки подпапки по месяцам, а в этих...

Передача файла на FTP сервер (виснет программа)
Здравствуйте) Передаю текстовый файл на фтп-сервер, из компонентов на форме idFTP и Button. В обработчик нажатия на кнопку вставляю вот...

Передача файлов по FTP
Я написал скрипт для передачи файлов по ftp: @echo off :res set addr=script echo.open хост> %ADDR% echo.логин>> %ADDR% ...

36
 Аватар для Dinkin
783 / 556 / 136
Регистрация: 31.05.2013
Сообщений: 3,150
Записей в блоге: 3
15.07.2015, 20:46
Скорее всего еще надо указать порт
1
619 / 218 / 51
Регистрация: 22.11.2010
Сообщений: 1,781
Записей в блоге: 3
15.07.2015, 20:50  [ТС]
Dinkin, да, кстати, я забыл указать тут порт, в коде он есть. 21.

Добавлено через 1 минуту
обязательно вообще создавать потоки для источника?
0
 Аватар для Dinkin
783 / 556 / 136
Регистрация: 31.05.2013
Сообщений: 3,150
Записей в блоге: 3
15.07.2015, 20:53
тогда так

C++
1
 IdFTP1->Passive=false;
или так

C++
1
 IdFTP1->Passive=true;
1
619 / 218 / 51
Регистрация: 22.11.2010
Сообщений: 1,781
Записей в блоге: 3
15.07.2015, 20:54  [ТС]
Dinkin, не не))) Обязательно ли? Я прочитал, что типа нужно создавать поток....
0
 Аватар для Dinkin
783 / 556 / 136
Регистрация: 31.05.2013
Сообщений: 3,150
Записей в блоге: 3
15.07.2015, 20:55
Не необязательно
1
619 / 218 / 51
Регистрация: 22.11.2010
Сообщений: 1,781
Записей в блоге: 3
16.07.2015, 09:10  [ТС]
Вопрос еще актуален...Передаче файла всегда ошибка File transfer failed
0
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
16.07.2015, 09:18
Разрешения на каталог какое ? 777 ?
1
619 / 218 / 51
Регистрация: 22.11.2010
Сообщений: 1,781
Записей в блоге: 3
16.07.2015, 11:00  [ТС]
Почтальон, я отправляю не через linux, а через винду, линукса нет ни на одном из компьютеров.
0
 Аватар для Dinkin
783 / 556 / 136
Регистрация: 31.05.2013
Сообщений: 3,150
Записей в блоге: 3
16.07.2015, 11:25
Цитата Сообщение от Supernatural Посмотреть сообщение
я отправляю не через linux
Тут не дело в ОС, "777" это права доступа к директории на принимающей стороне.
Вы пробовали осуществить отправку файлов другими приложениями, просто я к тому что может дело на стороне сервера.
1
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
16.07.2015, 23:00
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    FIdFTP->Username= FData.UserName;
    FIdFTP->Password= FData.Password;
    FIdFTP->Host= FData.Host;
    FIdFTP->Port= FData.Port;
    FIdFTP->Passive= true;
    FIdFTP->TransferType= ftBinary;
 
    FIdFTP->ReadTimeout= 15000;
    FIdFTP->ConnectTimeout= 15000;
 
     //  ...
 
    std::auto_ptr<TFileStream> FS(new TFileStream(From,fmOpenRead));
 
    FIdFTP->Put(FS.get(),To);
1
619 / 218 / 51
Регистрация: 22.11.2010
Сообщений: 1,781
Записей в блоге: 3
17.07.2015, 11:34  [ТС]
Avazart,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
FIdFTP->Username= FData.UserName;
    FIdFTP->Password= FData.Password;
    FIdFTP->Host= FData.Host;
    FIdFTP->Port= FData.Port;
    FIdFTP->Passive= true;
    FIdFTP->TransferType= ftBinary;
 
    FIdFTP->ReadTimeout= 15000;
    FIdFTP->ConnectTimeout= 15000;
 
     //  ...
 
    std::auto_ptr<TFileStream> FS(new TFileStream(From,fmOpenRead));
 
    FIdFTP->Put(FS.get(),To);
вставил твой код, все равно та же самая ошибка
0
17.07.2015, 12:27

Не по теме:

Значит не судьба....

0
619 / 218 / 51
Регистрация: 22.11.2010
Сообщений: 1,781
Записей в блоге: 3
17.07.2015, 14:41  [ТС]
C++
1
2
3
4
5
String textfile="C:\\Лог.txt";
TFileStream *bu= new TFileStream(textfile, fmShareDenyNone);
bu->Position=soFromBeginning;
IdFTP1->Put(bu->FileName, "/каталог1/каталог2", false);
delete bu;
я работаю без умного указателя, мне надо передать только 1 файл. Что делаю не верно?

Добавлено через 2 часа 10 минут
Прочитал логи фтп, тупо отказывает в доступе. Где нужно указывать в настройках программе, чтоб давала мне доступ на запись данных? Cerberus LLC 4.0.6
0
 Аватар для Dinkin
783 / 556 / 136
Регистрация: 31.05.2013
Сообщений: 3,150
Записей в блоге: 3
17.07.2015, 14:51
Цитата Сообщение от Supernatural Посмотреть сообщение
Прочитал логи фтп, тупо отказывает в доступе. Где нужно указывать в настройках программе, чтоб давала мне доступ на запись данных? Cerberus LLC 4.0.6

то есть советы выше на счет проверить права доступа прошли мимо вас
1
1408 / 572 / 127
Регистрация: 31.10.2011
Сообщений: 1,960
17.07.2015, 15:10
Цитата Сообщение от Supernatural Посмотреть сообщение
Что делаю не верно?
Хз. У меня на XE7 и с твоего первого поста код работает...

Добавлено через 14 минут
Цитата Сообщение от Supernatural Посмотреть сообщение
Где нужно указывать в настройках программе, чтоб давала мне доступ на запись данных?
если он установлен как служба, то смотри сюда
1
619 / 218 / 51
Регистрация: 22.11.2010
Сообщений: 1,781
Записей в блоге: 3
17.07.2015, 15:48  [ТС]
Цитата Сообщение от _Dimon_ Посмотреть сообщение
если он установлен как служба, то смотри сюда
там я уже был...
Права не менял, служба была с самого начала. Главное, когда создаю связь, то в логе отражается, что моя программа подключилась к серверу
Миниатюры
Передача файлов по FTP   Передача файлов по FTP  
0
1408 / 572 / 127
Регистрация: 31.10.2011
Сообщений: 1,960
17.07.2015, 16:08
Цитата Сообщение от Dinkin Посмотреть сообщение
Вы пробовали осуществить отправку файлов другими приложениями, просто я к тому что может дело на стороне сервера.
Например тотал или файлзилла ?

Добавлено через 3 минуты
Цитата Сообщение от Supernatural Посмотреть сообщение
Главное, когда создаю связь, то в логе отражается, что моя программа подключилась к серверу
Подключилось - это хорошо. Значит фтп сервер работает. Но доступа к каталогу по прежнему нет.
Так пробовал?
C++
1
2
//.........
IdFTP1->Put("C:\\text.txt", "/Obmen", false);
Добавлено через 2 минуты

Не по теме:

Вот поверь, очень неохота ставить эту прогу, ради того чтоб попробовать. Где-то у тебя прогон, но билдера это никак не касается (((

1
619 / 218 / 51
Регистрация: 22.11.2010
Сообщений: 1,781
Записей в блоге: 3
17.07.2015, 16:22  [ТС]
_Dimon_, тотал и мозила работают как надо, разумеется))) Пробовал с явным указанием адреса и через поток, ответ всегда один и тот же.

Добавлено через 13 минут
Цитата Сообщение от _Dimon_ Посмотреть сообщение
Вот поверь, очень неохота ставить эту прогу, ради того чтоб попробовать. Где-то у тебя прогон, но билдера это никак не касается (((
тотал и мозила стоят на всех компах сети, с ними обмен работает безотказно.
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
17.07.2015, 16:28
Тогда смотри их настроки сравнивай. Скорее всего конечно проблема в сервере.
А вообще лучше сделай лог..
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.07.2015, 16:28
Помогаю со студенческими работами здесь

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

Передача файла (файлов) по FTP
Хотел передать файл по FTP с помощью Internet Transfer Control (MSINET.OCX), по началу получалось по этому примеру: With Inet1 .URL =...

Передача файлов на FTP-сервер
Сделал значит я cmd файл в нем прописал: Ftp -s:&quot;1.txt&quot; А в q.txt файле open xxxxx.ua xxxxx xxxxxx put 2.txt bye Ну...

Передача файлов на ftp сервер
Доброе утро, Программисты!!! Для проекта по распознаванию речи мне потребовалось начать учить C#(Только синтаксис, так как Pascal и...

Передача файлов между FTP-серверами
Интересует, возможно ли реализовать передачу файлов между двумя FTP-серверами, или это утопия для VB.NET? ;)


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru