Читаем Delphi. Учимся на примерах полностью

procedure TForm1.Button1Click(sender: TObject);

begin

 ftp.Host:= ftpserver.Text; //ftp-сервер

 ftp.UserID:= name.Text;//логин

 ftp.Password:= pass.Text;// пароль

 ftp.Port:= StrToInt(port.Text); //порт для подключения

 //соединяемся с сервером

 if not ftp.Connected then ftp.Connect;

end;

Здесь мы считываем все данные, которые необходимы для соединения с сервером. После этого мы пытаемся соединиться с сервером. Об успешности этой операции можно будет узнать в поле состояния.

Обработаем нажатие кнопки Отключиться:

procedure TForm1.Button2Click(Sender: TObject);

begin

 if ftp.Connected then//если соединен

  ftp.Disconnect;//отключиться от сервера

end;

Если при нажатии кнопки Отключиться установлено соединение с сервером, то мы разрываем его.

Теперь обработаем нажатие кнопок, которые служат для работы с сервером. Обработчик события OnClick для кнопки Удалить:

procedure TForm1.Button4Click(Sender : TObject);

begin

 ftp.Delete(del.text); //удалить файл

end;

Здесь мы удаляем файл, имя которого пользователь ввел в поле рядом с кнопкой.

Обработаем нажатие кнопки Изменить каталог:

procedure TForm1.Button5Click(Sender: TObject);

begin

 ftp.ChangeDir(cd.Text); //изменяем каталог

end;

Устанавливаем текущим тот каталог, который указан в поле cd.

Обработаем нажатие кнопки Выполнить команду:

procedure TForm1.Button6Click(Sender: TObject);

begin

 ftp.DoCommand(cmd.Text); //выполнение команды

end;

При работе с сервером мы предоставляем пользователю возможность работать не только с помощью команд, предусмотренных в интерфейсе, но и выполнять на сервере любые произвольные команды. Для этого у нас есть поле cmd, в котором пользователь вводит команду, и кнопка Выполнить команду, по нажатию которой введенная команда выполняется.

Обработаем нажатие кнопки Создать каталог:

procedure TForm1.Button7Click(Sender: TObject);

begin

 ftp.MakeDirectory(md.Text); //создать каталог

end;

Обработаем нажатие кнопки Удалить каталог:

procedure TForm1.Button8Click(Sender: TObject);

begin

 ftp.RemoveDir(rd.Text); //удалить каталог

end;

Обработаем нажатие кнопки Скачать файл:

procedure TForm1.Button9Click(Sender: TObject);

begin

 //открытие диалогового окна сохранения файла

 if Save1.Execute

 then //скачиваем указанный файл

  ftp.Download(download.Text, save1.FileName)

 else ShowMessage('File not saved!'); {если пользователь отказался сохранять файл}

end;

Сначала мы предлагаем пользователю указать имя и путь размещения полученного файла. Затем мы загружаем файл и размещаем его по указанному пути.

Наконец, обработаем нажатие кнопки Загрузить файл на сервер:

procedure TForm1.Button3Click(Sender: TObject);

var

 i: integer;

 FName, temp: string; //для получения имени файла

begin

 if not Open1.Execute then ShowMessage('Файл не выбран!')

 else begin

 //очищаем переменные, которые содержат имя файла

 temp:= '';

 FName:= '';

 //получаем имя файла

 for i: = Length(Open1.FileName) downto 1 do

 begin

  if Open1.FileName[i] = '\' then break;

  temp:= temp+ Open1.FileName[i];

 end;

 for i:=length(temp) downto 1 do

  fname:= fname + temp[i];

  ftp.Upload(Open1.FileName, FName); //загружаем файл

 end;

end;

Здесь мы сначала просим пользователя выбрать файл, который он хочет передать на сервер. Затем узнаем имя выбранного файла и загружаем его на сервер с таким же именем.

Перейти на страницу:

Похожие книги

Основы программирования в Linux
Основы программирования в Linux

В четвертом издании популярного руководства даны основы программирования в операционной системе Linux. Рассмотрены: использование библиотек C/C++ и стан­дартных средств разработки, организация системных вызовов, файловый ввод/вывод, взаимодействие процессов, программирование средствами командной оболочки, создание графических пользовательских интерфейсов с помощью инструментальных средств GTK+ или Qt, применение сокетов и др. Описана компиляция программ, их компоновка c библиотеками и работа с терминальным вводом/выводом. Даны приемы написания приложений в средах GNOME® и KDE®, хранения данных с использованием СУБД MySQL® и отладки программ. Книга хорошо структурирована, что делает обучение легким и быстрым. Для начинающих Linux-программистов

Нейл Мэтью , Ричард Стоунс , Татьяна Коротяева

ОС и Сети / Программирование / Книги по IT
97 этюдов для архитекторов программных систем
97 этюдов для архитекторов программных систем

Успешная карьера архитектора программного обеспечения требует хорошего владения как технической, так и деловой сторонами вопросов, связанных с проектированием архитектуры. В этой необычной книге ведущие архитекторы ПО со всего света обсуждают важные принципы разработки, выходящие далеко за пределы чисто технических вопросов.?Архитектор ПО выполняет роль посредника между командой разработчиков и бизнес-руководством компании, поэтому чтобы добиться успеха в этой профессии, необходимо не только овладеть различными технологиями, но и обеспечить работу над проектом в соответствии с бизнес-целями. В книге более 50 архитекторов рассказывают о том, что считают самым важным в своей работе, дают советы, как организовать общение с другими участниками проекта, как снизить сложность архитектуры, как оказывать поддержку разработчикам. Они щедро делятся множеством полезных идей и приемов, которые вынесли из своего многолетнего опыта. Авторы надеются, что книга станет источником вдохновения и руководством к действию для многих профессиональных программистов.

Билл де Ора , Майкл Хайгард , Нил Форд

Программирование, программы, базы данных / Базы данных / Программирование / Книги по IT
Программист-прагматик. Путь от подмастерья к мастеру
Программист-прагматик. Путь от подмастерья к мастеру

Находясь на переднем крае программирования, книга "Программист-прагматик. Путь от подмастерья к мастеру" абстрагируется от всевозрастающей специализации и технических тонкостей разработки программ на современном уровне, чтобы исследовать суть процесса – требования к работоспособной и поддерживаемой программе, приводящей пользователей в восторг. Книга охватывает различные темы – от личной ответственности и карьерного роста до архитектурных методик, придающих программам гибкость и простоту в адаптации и повторном использовании.Прочитав эту книгу, вы научитесь:Бороться с недостатками программного обеспечения;Избегать ловушек, связанных с дублированием знания;Создавать гибкие, динамичные и адаптируемые программы;Избегать программирования в расчете на совпадение;Защищать вашу программу при помощи контрактов, утверждений и исключений;Собирать реальные требования;Осуществлять безжалостное и эффективное тестирование;Приводить в восторг ваших пользователей;Формировать команды из программистов-прагматиков и с помощью автоматизации делать ваши разработки более точными.

А. Алексашин , Дэвид Томас , Эндрю Хант

Программирование / Книги по IT