delphi郵件定時發送

unit smtp;


interface


uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection,
  IdTCPClient, IdMessageClient, IdSMTP, IdMessage, ExtCtrls;


type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    btn1: TButton;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    IdSMTP1: TIdSMTP;
    IdMessage1: TIdMessage;
    memo1: TMemo;
    btn2: TButton;
    Edit8: TEdit;
    Edit7: TEdit;
    tmr1: TTimer;
    procedure btn1Click(Sender: TObject);
    procedure btn2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;


var
  Form1: TForm1;
  i: Integer;
  n: integer;


implementation


{$R *.dfm}




procedure TForm1.btn1Click(Sender: TObject);
begin
  tmr1.Enabled:=True;//啓動定時器
   try
     IdSMTP1.AuthenticationType:=atLogin; //設置登陸類型
     IdSMTP1.Username:=Edit1.Text; //設置登陸帳號
     IdSMTP1.Password:=Edit2.Text; //設置登陸密碼 
     IdSMTP1.Host:=Edit3.Text; //設置SMTP地址
     IdSMTP1.Port:=strtoint(Edit4.Text); //設置端口   必須轉化爲整型
     IdSMTP1.Connect;   //開始連接服務器
   except
     Showmessage('連接失敗,請重試!');
     Exit; //連接失敗 的話 退出該執行過程
   end;
   IdMessage1.Body.Clear;   //先清空上次發送的內容
   IdMessage1.Subject:=Edit5.Text;   //設置郵件發送的標題
   IdMessage1.Body.Assign(Memo1.Lines);   //設置郵件發送的主體
   IdMessage1.From.Address:=Edit6.Text; //設置郵件的發件人   也就是說該郵件來自什麼地方
   IdMessage1.Recipients.EMailAddresses:=Edit7.Text;   //收件人的地址
           try
             idSMTP1.Send(IdMessage1);
             Showmessage('郵件發送成功!');
           except
             Showmessage('郵件發送失敗!');
           end;


end;
procedure TForm1.btn2Click(Sender: TObject);
begin     
          try
             n:=strtoint(Edit8.Text);
             for i:=1 to n do
             begin
             idSMTP1.Send(IdMessage1);
             end;
             Showmessage('郵件發送成功!');
           except
             Showmessage('郵件發送失敗!');
           end;
end;


end.


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章