ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
Отправка файла на ftp сервер(WinAPI) [Delphi] |

17.04.2008, 21:36
|
|
Познающий
Регистрация: 01.03.2008
Сообщений: 68
Провел на форуме: 140772
Репутация:
72
|
|
Отправка файла на ftp сервер(WinAPI) [Delphi]
Соединение реализовал, все нормуль подключается, а вот передать файл не получается, подскажите как правильно передать файл(название файла и собственно его содержимое(использую обычный текстоваый файл))? за ранее благодарствую!!! 
|
|
|

17.04.2008, 22:08
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме: 4037638
Репутация:
1821
|
|
Покажи как пытаешься передать файл, и если не "ПРИВАТНО :d" весь код отправки на ftp
|
|
|

17.04.2008, 22:31
|
|
Познающий
Регистрация: 08.03.2007
Сообщений: 65
Провел на форуме: 91259
Репутация:
16
|
|
http://athena.vvsu.ru/docs/tcpip/rfc/rfc959.txt
http://book.itep.ru/4/45/ftp_454.htm
|
|
|

17.04.2008, 22:45
|
|
Познающий
Регистрация: 01.03.2008
Сообщений: 68
Провел на форуме: 140772
Репутация:
72
|
|
Ну я сначало пытался, прочитать файл, записать в буфер прочтеное и потом это безобразие передать на ftp, но потом понял, что делаю не то, нужно еще как то название файла передать, а не просто данные пихнуть, ничего великого в коде нема
Код:
fName:='syslog.txt';
AssignFile(f, fName);
{$I-}
Reset(f);
{$I+}
while not EOF(f) do
begin
readln(f,buf);
//.....
sendbuff:=buf;
send(s, sendbuff[1], length(sendbuff),0);
Это я так сказать накатал, по памяти прям тут, т.к. ща у мну отрубали свет и часть моей работы ушла в небытие, но думаю этот код бред.
Еще есть функция на WinSock2 TransmitFile, она передает файл целиком, но пока я не въехал как ей пользоваться(примеров не нашел). Полазив по форумам пришел к заключению, что народ только пользуется индейцами и библиотекой WinInet, а про WinSock никто ниче не слышал и никто ниче незнает  ,
Вот кстати кусочек кода, который отправляет файл на фтп с помощью WinInet, мож кому пригодится(а то я встречал подобный код только "размазанный" на "пару километров"  а это так сказать "мини бикини"  :
Код:
procedure Sendfile;
begin
InetHandle := InternetOpen(PChar('FTP'), 0, nil, nil, 0);
FtpHandle := InternetConnect(InetHandle, PChar('ftp.xxxxxx.ru'), 21, PChar('FTPLogin'),
PChar('FTP_Password'), INTERNET_SERVICE_FTP, 0, 255);
if not Assigned(FtpHandle) then
InternetCloseHandle(InetHandle)
else
try
FtpPutFile(FtpHandle, PChar('файл который хотим отправить'), PChar('имя файла на сервере'),
FTP_TRANSFER_TYPE_BINARY, 255);
except
end;
|
|
|

17.04.2008, 22:55
|
|
Познающий
Регистрация: 08.03.2007
Сообщений: 65
Провел на форуме: 91259
Репутация:
16
|
|
про WinSock никто ниче не слышал и никто ниче незнает
бред сивой кобылы - гугль/читай.
подобный код только "размазанный" на "пару километров"
просто он наверно был напичкан доп-функционалом.
и описание протокола почитай сначала, прежде чем его кодить
|
|
|

17.04.2008, 23:24
|
|
Познающий
Регистрация: 01.03.2008
Сообщений: 68
Провел на форуме: 140772
Репутация:
72
|
|
ну ткни меня носом в тот форум где гугль показал, что там есть нормальный фтп клиент, написанный на WinSokAPI, кроме опять же изъежженного исходника из этой статьи "FTP клиент своими руками", ничего путевого и нету(ну по крайней мере я не нашел).
|
|
|

17.04.2008, 23:30
|
|
Познающий
Регистрация: 08.03.2007
Сообщений: 65
Провел на форуме: 91259
Репутация:
16
|
|
Dr.KoD
юзаешь вининет либо пишешь на сокетах сам. в чем проблема? или гугл 0дей инфу о протоколе скрыл? так вон я тебе скока ссылок дал. сиди-изучай.
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|