Пользователь

Добро пожаловать,

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

Меню сайта




Ваше мнение
Как вы оцените наш сайт?

Замечательный
Хороший
Обычный
Плохой
Отвратительный


Результаты
Другие опросы

Всего голосов: 846
Комментарии: 10


Наши партнеры



Статистика




Programming books  Download software  Documentation  Scripts  Content Managment Systems(CMS)  Templates  Icon Sets  Articles  Contacts  Voting  Site Search




Статьи и обзоры



Отправка письма средствами Delphi

Статьи по объектно-ориентированному программированию на языке Pascal и в среде программирования Delphi. Примеры работающего кода, тексты компонентов и классов, советы мастеров. Для отправки электронного письма, без использования почтового клиента, мы будем использовать компонент TNSMTP, который находится на вкладке FastNet.

Компонент TNSMTP позволяет отправлять электронную почту через почтовый сервер или выполнять другие команды, описанные в стандарте RFC 821. Данный компонент работает по протоколу SMTP (Simple Mail Transfer Protocol). По стандарту RFC 821 протокол SMTP использует порт 25. При подключении к почтовому серверу необходимо знать учетную запись (login) своего почтового ящика. Чаще всего, имя пользователя - это начальная часть вашего почтового адреса – до символа «@». Так же для подключения к SMTP серверу необходимо знать его адрес. Адрес своего почтового сервера указывается при создании на нем почтового ящика. Стоит заметить, что адрес почтового ящика и адрес сервера – это совершенно разные вещи.

Создадим небольшой пример. Добавим на форму стандартную кнопку и компонент TNSMTP.

Собственно, Вы можете и не добавлять на форму данный компонент, а просто прописать его в строках Uses. Такой вариант очень полезен, если Вы пишете программу в «консольном» режиме.

Код:
Код
Uses .., NMsmtp;



Но этого мы делать не будем. В обработчик кнопки поместим код расположенный ниже.

Код:
Код
procedure TForm1.Button1Click(Sender: TObject);
begin
NSMTP1.Host := 'smtp.Inbox.ru'; {адрес SMTP сервера (или IP-Адресс)}
NSMTP1.Port := 25; {Порт SMTP сервера (по стандарту RFC 821 равен 25)}
NSMTP1.Connect; {Подключение к SMTP серверу}
With NSMTP1 do
begin
Charset := 'windows-1251'; {Кодировка письма}
PostMessage.FromAddress:='homosapienz@inbox.ru'; {Отправитель письма}
PostMessage.ToAddress.Text:='homosapienz@inbox.ru'; {Получатель письма}
PostMessage.Body.Text:='Письмо отправлено с помощью Delphi'; {Текст письма}
SendMail; {Отправляем письмо}
end;
{Проверяем состояние подключения}
if NSMTP1.Connected then
NSMTP1.Disconnect; {Отключение от сервера}
end;



Для корректной работы компонента необходимо заполнить свойства Host и Port. Для того чтобы подключиться к серверу, необходимо вызывать метод Connect, а для отключения - Disconnect. Главное свойство компонента TNSMTP - PostMessage. Это свойство содержит в себе информацию об отправляемом письме: ToAddress (адрес получателя), FromAddress (адрес отправителя), Body (текст письма), Subject (тема письма) и FromName (имя отправителя). После отправки письма необходимо отключиться от сервера, используя метод Disconnect.



Нет комментариев. Почему бы Вам не оставить свой?
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.
Внимание! Если у вас не получилось найти нужную информацию, используйте рубрикатор или воспользуйтесь поиском


.



Статьи и обзоры Delphi и TurboPascal Отправка письма средствами Delphi Для отправки электронного письма без использования почтового клиента мы будем использовать компонент TNSMTP который находится на вкладке FastNet Компонент позволяет отправлять электронную почту через почтовый сервер или выполнять другие команды описанные стандарте Данный работает по протоколу SMTP Simple Mail Transfer Protocol По стандарту протокол использует порт При подключении почтовому серверу необходимо знать