Delphi свят - обработка на пощата с помощта на Delphi
обработка Mail с Delphi
В процеса на кандидатстване за стойностите на полетата и да ги записва в базата данни на ACCESS, където полетата имат същото име като това на мухъл. По този начин, данните, съхранявани на компютъра в офиса и са били скрити от Интернет - хакери.
Това приложение може да записва на почти всяка достъпни за вас език. Предлагам ви да разгледа такова заявление в Делфи и обсъждане на принципите на програмата. За Интернет протоколи в раздел Delphi Компонент Palette е предназначен Фастнет. Фастнет
За да получите електронна поща, ние се нуждаем от протокола POP3 (Post Office Protocol - Version3) за този протокол е запазено 110 порт, съответният компонент в секцията Фастнет - NMPOP3.
С NMPOP3 да: се свържете със сървъра, изпратете auntifikatsionnuyu информация на сървъра, за да получи информация за пощенска кутия (Брой букви, размер) за получаване на съобщения от сървъра, изтриване на съобщенията.
Принципът на диалог със сървъра на POP3 протокол се състои от три етапа: установяване на връзка (auntifikatsiya), четене на списъка с поща и изберете желаната буква, прекратяване на връзката. протокол за работа с сървъра, на който трябва да се знае, тъй като тя предоставя големи възможности не само за програмисти, но също така и за потребителите. Много пъти съм имал писмото на невероятен размер, имат голям брой снимки. След десет минути на Outlook Express просто увисва. Аз трябваше да изтриете поща, провеждане на диалог с POP3 сървър, като я присъедини чрез телнет към порт 110.
Помислете за диалог със сървъра на POP3 протокол.
След свързването към сървъра за електронна поща, издаден поздрав низ + OK POP3 сървър готов. Потребителят изпраща команда за вход ПОТРЕБИТЕЛЯ потребителско име и парола PASS парола. Ако потребителско име и парола са въведени правилно, можете да започнете да преглеждате пощата.
Команда LIST, можете да видите колко писма до вас и това е големината на буквите. Отговор на сървъра е както следва:
Потребител: LIST
Сървър: + OK 2 съобщения (400 октета)
Сървър: 1250
Сървър: 2150
Това съобщение се посочва, че сървърът е две длъжности са в размер на 400 байта, първото съобщение от 250 байта, втора -150 байта. Ако искате да видите размера на дадена буква, като петата трябва да се изпрати на сървъра на команди представят 5. В резултат на това на терминала ще покаже сървър: + OK 2 200. В случай, че писмо с този номер не съществува появява грешка
Сървър: -ERR няма такова съобщение, само на 2 съобщения в maildrop.
Тази грешка показва, че сървърът е само две букви. За да се получи писмо от сървъра с помощта на команда RETR м, където m - броят на писмото. Ако писмото е твърде дълго, не можете да го прочетете изцяло и само на първата н - линии на това писмо, това е отбор TOP съобщ п. За премахване на писма служи DEL м команда. Ако имейлът е изтрита, съобщение + OK съобщение 1 заличава, освен ако не е писмо с броя на сървърът ще върне грешка -ERR няма такова съобщение. Пълна обработка на пощата и излизане на диалоговия прозорец можете да QUIT команда. Повече протокол е описан в RFC1081 и RFC 1460.
За нашия пример, трябва да имате пощенска кутия, го получите в интернет няма да е особено трудно. Вземете, например, безплатна пощенска кутия на www.rambler.ru на сървъра .Server изходяща поща на Rambler mail.rambler.ru (можете да го намерите лесно от вашия администратор на сървъра или на сървъра), ние ще трябва да се свърже с POP3 протокол. Така че нека да започнем.
За да направите това, ние трябва да програмирате бутона Button1 по следния алгоритъм:
процедура TForm1.Button1Click (Sender: TObject);
започвам
NMPOP31.Connect;
NMPOP31.GetMailMessage (1);
Edit1.Text: = NMPOP31.MailMessage.Subject;
Memo1.Lines: = NMPOP31.MailMessage.Body;
NMPOP31.Disconnect;
приключи;
И други области, от които повече могат да бъдат прочетени в RFC 822 документа.
С оглед на гореизложеното, можем да считаме, диалог на сървъра на потребителите данни, след като отборът:
Потребител: From: "Тест"
Потребител: До: "нов"
Потребител: Относно: Проверка
Потребител:
Потребител: Здравейте! Това е тест съобщение
Потребител: Чао!