|
|
Отправка сообщения на мыло
Сейчас я вам покажу пример, как можно отправить email сообщение на Delphi. Положите на форму компонент IdSMTP и IdMessage Создаём процедуру отправки сообщения procedure mailsend; var attach: TidAttachment; msg: tidmessage; i: integer; begin f.idSMTP1.AuthenticationType:= atLogin; f.idSMTP1.Username:='login'; // ваш логин f.idSMTP1.Password:='pass'; // пароль f.idSMTP1.Host:='smtp.mail.ru'; // хост mail.ru f.IdSMTP1.Port:=2525; // порт mail.ru msg:=TIdMessage.Create(nil); msg.Body.Add('Body'); // сообщение письма msg.Subject:='mail'; // заголовок письма (Тема) msg.From.Address:='xxx@xx.xx'; // от кого отправляем письмо msg.From.Name:='message'; // имя отправителя msg.Recipients.EMailAddresses:='xxx@xx.xx'; // кому отправить письмо msg.IsEncoded:=true; attach:=TIdAttachment.Create(msg.MessageParts,'attach.exe'); // раскоментируйте эту строчку если хотите отправить письмо с вложением, где attach.exe, файл который должен лежать в той же директории что и сама программа f.idSMTP1.Connect(); if f.idSMTP1.Connected then begin f.idSMTP1.Send(msg); end else f.IdSMTP1.Disconnect; end;
Теперь вызываем процедуру mailsend procedure Tf.Button1Click(Sender: TObject); begin mailsend; f.IdSMTP1.Disconnect; end;
Если вы хотите отправлять сообщение email через какой-то промежуток времени, просто поместите mailsend; f.IdSMTP1.Disconnect;
в Timer1, задав таймеру нужный промежуток времени.
Теперь приведу пример для ручного ввода данных для отправки email сообщения. Положите на форму компонент IdSMTP и IdMessage procedure Tf.FormCreate(Sender: TObject); begin Edit1.Text := 'login'; // ваш логин Edit2.Text := 'pass'; // пароль Edit3.Text := 'smtp.mail.ru'; // хост mail.ru Edit4.Text := '2525'; // порт Edit5.Text := 'mail'; // заголовок письма (Тема) Edit6.Text := 'ваше имя'; // имя отправителя Edit7.Text := 'xxx@xx.xx'; // кому отправить письмо Edit8.Text := 'xxx@xx.xx'; // от кого отправляем письмо Memo1.Text := 'привет'; // сообщение письма end;
Теперь отправляем письмо по нажатию Button1 procedure Tf.Button1Click(Sender: TObject); var msg:tidmessage; i:integer; begin f.idSMTP1.AuthenticationType := atLogin; f.idSMTP1.Username := Edit1.Text; f.idSMTP1.Password := Edit2.Text; f.idSMTP1.Host := Edit3.Text; f.IdSMTP1.Port := StrToInt(Edit4.Text); msg:=TIdMessage.Create(nil); msg.Body.Add(Memo1.Text); msg.Subject := Edit5.Text; msg.From.Address := Edit8.Text; msg.From.Name := Edit6.Text; msg.Recipients.EMailAddresses := Edit7.Text; msg.IsEncoded := true; f.idSMTP1.Connect(); if f.idSMTP1.Connected then begin f.idSMTP1.Send(msg); end else f.IdSMTP1.Disconnect; ShowMessage('Сообщение отправлено!'); end;
|
| Категория: Примеры на Delphi7 | Добавил: DelphiAiX (20.03.2011)
|
| Просмотров: 3639
| Рейтинг: 5.0/1 |
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]
|
|