Работа с почтой в Delphi 7
Основное предназначение электронной почты – дать пользователям возможность общаться друг с другом. Сам процесс общения происходит путем пересылки текстовых и прочих файлов, подобно тому, как при обычной почтовой переписке люди обмениваются письмами, открытками и прочей корреспонденцией. Уникальность электронной почты как сетевого сервиса, состоит в том, что за счет имеющихся шлюзовых соединений между различными сетями почта может доставляться практически в любые и из любых мировых сетей, объединяя их в единое сетевое пространство. Причем скорость доставки корреспонденции зависит не столько от физической удаленности почтовых серверов друг от друга, сколько от пропускной способностью тех узлов, через которые послание доставляется адресату. Другая особенность электронной почты – ее универсальность. Услугами почты можно воспользоваться как при постоянном, так и при сеансовом доступе к Сети.
Темой курсового проекта является разработка почтового программы для операционной системы Windows.
Цель: создать полноценный почтовый клиент для приема и отправки писем посредством протокола POP3. Организовать возможность отправки писем с вложениями, отправку и прием писем в формате HTML с актуальной кодировкой. Обеспечить автоматическую проверку почты через определенные моменты времени.
Объектом курсового проекта является изучение почтовых протоколов SMTP, POP3, IMAP3 и создание приложения для получения и отправки сообщений с почтовых серверов.
Предмет: Программное обеспечение системы
Задачи. Для достижения цели нам пришлось решить следующие задачи:
• Изучить научную литературу
• Проанализировать программное обеспечение выпущенное ранее
• Подготовить схему выполнения
• Написать код программы
• Отладить и протестировать программу на наличие ошибок
Описание основных алгоритмов
Получение и отправка писем реализовано с помощью библиотеки Internet Direct 9 (INDY) и классов POP3 и SMTP встроенных в Delphi
Получение писем
begin
WebBrowser1.Navigate('about:blank');
POP3.Host:=popHost; // адресс почтового сервера
POP3.Port:=popPort; // порт по которому будет осуществляться подключение
POP3.Username:=Username; // Логин пользователя
POP3.Password:=Pass; // пароль пользователя
POP3.Connect; // подключение по протоколу POP3, по настрокам в компоненте IdPOP3, с именем POP3
numPosts:=POP3.CheckMessages;
Memo1.Clear; // очистка компонента memo для отображения текста письма.
Memo1.Lines.Add(inttostr(numPosts));
StringGrid1.RowCount:=numPosts+1;
for i:=1 to numPosts do
begin
IdMessage.Clear; // очистка буфера для сообщения
POP3.Retrieve(i,IdMessage); // получение одного сообщения
Memo1.Lines.AddStrings(IdMessage.Body); // передача сообщения из компонента IdMessage в memo
Stringgrid1.Cells[0,i]:=IdMessage.From.Name;
Stringgrid1.Cells[1,i]:=IdMessage.Subject;;
Stringgrid1.Cells[2,i]:=FormatDateTime('dd mmm', IdMessage.Date);//yyyy hh:mm:ss полная дата
end;
// вывод в компоненты Label информации о сообщении.
Label1.Caption := IdMessage.From.Name;
Label2.Caption := IdMessage.Recipients.EmailAddresses;
Label4.Caption := IdMessage.Subject;
Label5.Caption := FormatDateTime('dd mmm yyyy hh:mm:ss', IdMessage.Date);
Label6.Caption := IdMessage.ReceiptRecipient.Text;
Label7.Caption := IdMessage.Organization;
POP3.Delete(1); // удаление с сервера, полученного сообщения
POP3.Disconnect; // разрыв связи
Методы. Было выбрано использование два почтового протокола: POP3 для приема почты с сервера и SMTP для отправки на сервер.
Гипотеза. Программа предназначена для удобного чтения электронной почты, написанию и отправки писем адресатам.
Похожие записи
No user прокомментировали сообщение
Оставить комментарий