Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Ftp-клиент

494
07 ноября 2002 года
Treolorn
30 / / 20.06.2000
Пытаюсь с консоли зайти на FTP. Создаю сокет, коннекчусь нормально, получаю, как и положено от сервера "202...". И все... больше ничего на него не проходит, может и проходит но ответа нет. :(

while(1) // В цикле - отправляю - получаю
{
gets(szMessage); // Беру команду с консоли
strcat(szMessage, "\n"); // Добавляю <CRLF>
ret = send(sClient, szMessage, strlen(szMessage), 0); // Посылаю
printf("%d bytes\n", ret); // Пишу сколько байт отправилось

ret = recv(sClient, szBuffer, DEFAULT_BUFFER, 0); // Получаю ответ
szBuffer[ret] = '\0';

printf("%s", szBuffer); // Пишу сколько байт ответило.
}

по идее, после коннекта я пишу: USER Anonymous<ENTER>
все должно уйти на сервер, и придти ответ. Но его нету...
250
08 ноября 2002 года
Joker
1.4K / / 20.02.2000
Цитата:
Originally posted by Treolorn
Пытаюсь с консоли зайти на FTP. Создаю сокет, коннекчусь нормально, получаю, как и положено от сервера "202...". И все... больше ничего на него не проходит, может и проходит но ответа нет. :(

while(1) // В цикле - отправляю - получаю
{
gets(szMessage); // Беру команду с консоли
strcat(szMessage, "\n"); // Добавляю <CRLF>
ret = send(sClient, szMessage, strlen(szMessage), 0); // Посылаю
printf("%d bytes\n", ret); // Пишу сколько байт отправилось

ret = recv(sClient, szBuffer, DEFAULT_BUFFER, 0); // Получаю ответ
szBuffer[ret] = '\0';

printf("%s", szBuffer); // Пишу сколько байт ответило.
}

по идее, после коннекта я пишу: USER Anonymous<ENTER>
все должно уйти на сервер, и придти ответ. Но его нету...



поставь какой нибудь тсп логер чтобы понять что там вообще творится.. , так на первый взгляд вроде все ок.. и вместо DEFAULT_BUFFER тоже попробуй sizeof; Это должно помочь: http://kiron56.dtn.ru/texts/trojan.htm

494
08 ноября 2002 года
Treolorn
30 / / 20.06.2000
Все оки... все дело было в той самой последовательности. надо было добавить '\r\n'.

Та проблема решилась. Но теперь другая проблема.
Как мне выбирать порт для команды PORT?

А то зайти могу на сервер, а дальше ничего делать не могу. Даже список файлов посмотреть.
250
09 ноября 2002 года
Joker
1.4K / / 20.02.2000
Цитата:
Originally posted by Treolorn
Все оки... все дело было в той самой последовательности. надо было добавить '\r\n'.

Та проблема решилась. Но теперь другая проблема.
Как мне выбирать порт для команды PORT?

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


не понял он уже у тебя 21 или я че то недоганяю. а вообще та ссылка что выши там все сделано через свой порт.. , короче гляи..

494
09 ноября 2002 года
Treolorn
30 / / 20.06.2000
Цитата:
Originally posted by Joker

не понял он уже у тебя 21 или я че то недоганяю. а вообще та ссылка что выши там все сделано через свой порт.. , короче гляи..



Там все таки немного не то.
Как мне пользоваться одновременно двумя сокетами.
Там все происходит по одному.

А по 21у происходит только обмен сообщениями, типа USER ... PASS ... а потом надо посылать серверу команду PORT в которой говорится к какому порту к клиенту коннектится (т.е. ко мне). По которому приходят все остальное (файлы, список директорий/файлов и т.д.)

Если есть у кого исходники ftp-клиента с комментариями. Поделитесь, плз.

250
11 ноября 2002 года
Joker
1.4K / / 20.02.2000
Цитата:
Originally posted by Treolorn


Там все таки немного не то.
Как мне пользоваться одновременно двумя сокетами.
Там все происходит по одному.

А по 21у происходит только обмен сообщениями, типа USER ... PASS ... а потом надо посылать серверу команду PORT в которой говорится к какому порту к клиенту коннектится (т.е. ко мне). По которому приходят все остальное (файлы, список директорий/файлов и т.д.)

Если есть у кого исходники ftp-клиента с комментариями. Поделитесь, плз.


http://tntclan.r2.ru/source.html

250
11 ноября 2002 года
Joker
1.4K / / 20.02.2000
А может тебе компонент: NetMaster NMFTP заюзать в билдери и примерчик есть: \CBuilder6\Examples\FastNet\FTP
494
11 ноября 2002 года
Treolorn
30 / / 20.06.2000
Я бы с удовольствием, но что-то у меня с ним не получилось создать многопоточный FTP-клиент. Я заюзал WinInet - все круто. Только теперь не знаю как мне узнать скорость при использовании FtpGetFile().
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог