LittleFTP

Это маленькая статейка посвещается написанию… нет … даже не так…
в ней объесняется как можно создать собственный FTP сервер.Даже не знаю с чего начать…
Эту прожку я делал себе на диплом посиму многое приходилось отшлифовывать. Естественно я нашёл «готовый» ФТП сервер который был , в свою очередь позаимствован на тоже гдето в глубине интернета.
Ну дык… начнём?! =)

Нам понадобится:
— Delphi 7
— Компонент Indy / idFTPServer
— МОСК!!!

idFTPServer — имеет множество удобных прикольчиков) к примеру HelpReply. Собственно это является так называемой «помощью» когда клиент подключается к серверу. В это свойство можно написать давольно таки много висёлых сообщений. Правда при скачивании в стили аля де ИЕксплорер или оле Опера вы никогда не увидете этих строк. Их можно увидть, к примеру, при скачивания файла Даунлод мастером или ФлэшьГетом.
так… ушёл от темы…

Собственно если использовать компонент как таковой можно расмотреть множество свойств. В моём исходнике идёт такой принцип:


-Тебе оно надо?
— Нет ненадо.
— А тебе?
— Тоже не надо.
— Ну раз надо значит нада…


constructor TFTPServer.Create;
begin
IdFTPServer:=tIdFTPServer.create(nil);
IdFTPServer.DefaultPort:=Port;
IdFTPServer.AllowAnonymousLogin:=false;
IdFTPServer.EmulateSystem:=ftpsUNIX;
IdFTPServer.HelpReply.text:='Help is not implemented';
IdFTPServer.onchangeDirectory:=IdFTPServer1ChangeDirectory;
IdFTPServer.onchangeDirectory:=IdFTPServer1ChangeDirectory;
IdFTPServer.OnGetFileSize:=IdFTPServer1GetFileSize;
IdFTPServer.OnListDirectory:=IdFTPServer1ListDirectory;
IdFTPServer.OnUserLogin:=IdFTPServer1UserLogin;
IdFTPServer.OnRenameFile:=IdFTPServer1RenameFile;
IdFTPServer.OnDeleteFile:=IdFTPServer1DeleteFile;
IdFTPServer.OnRetrieveFile:=IdFTPServer1RetrieveFile;
IdFTPServer.OnStoreFile:=IdFTPServer1StoreFile;
IdFTPServer.OnMakeDirectory:=IdFTPServer1MakeDirectory;
IdFTPServer.OnRemoveDirectory:=IdFTPServer1RemoveDirectory;
IdFTPServer.Greeting.NumericCode:=220;
IdFTPServer.OnDisconnect:=IdFTPServer1DisConnect;
with IdFTPServer.CommandHandlers.add do
  begin
   Command:='XCRC';
   OnCommand:=IdFTPServer1CommandXCRC;
  end;
IdFTPServer.Active:=true;
end;

Т.е мы просто создаём компонент и пишим настройки нашего ФТП сервера. Некоторые из них, к примеру Port, является переменной, которая по ходу работы ФТП будит менятся.
Вот такая вот загагулина…
Всё в исходнике который находится:
[hide]Исходник[/hide]
Ну всё… сильно ногами не бить… первая статья как никак…
Если что… стучитесь воот сюда[hide]220-883-963[/hide] =)