標籤:
在Delphi中使用indy SMTP發送gmail郵件[轉]
2012-01-01 22:44:30| 分類: Delphi | 標籤: |舉報 |字型大小大中小 訂閱
在Delphi中發送email很簡單,發送ssl方式的gmail郵件也很簡單,只要在使用的idSMTP上附加一個TIdSSLIOHandlerSocket 就可以了。使用控制項 procedure sendMail(sToMail, sSubject, sContent: String);var SMTP: TIdSMTP; MailMessage: TIdMessage; SSLSocket: TIdSSLIOHandlerSocket;begin SMTP := TIdSMTP.Create(nil); SSLSocket := TIdSSLIOHandlerSocket.Create(nil); MailMessage:= TIdMessage.Create(nil); SMTP.IOHandler := SSLSocket; SMTP.Port := 465; SMTP.Host := ‘smtp.gmail.com‘; SMTP.AuthenticationType := atLogin; smtp.UserName := ‘SunnyYu2000‘; smtp.Password := ‘xxxxxx‘; // 設定郵件的資訊 MailMessage.From.Address := ‘[email protected]‘; MailMessage.Recipients.EMailAddresses := sToMail; MailMessage.Subject := sSubject; MailMessage.Body.Text := sContent; //發送郵件 try try SMTP.Connect(1000); SMTP.Send(MailMessage); ShowMessage(‘發送成功‘); except on E:Exception do ShowMessage(‘發送失敗: ‘ + E.Message); end; finally if SMTP.Connectedthen SMTP.Disconnect; end; MailMessage.Free; SSLSocket.Free; SMTP.Free;end;編譯後需要SSL動態庫支援,支援庫可以到Indy網站上下載到。如果需要發送附件,可以再發送前添加如下類似代碼 // 添加郵件的附件 TIdAttachment.Create(MailMessage.MessageParts, sAttachmentFileName);————–Indy需要的SSL支援dll http://www.indyproject.org/Sockets/SSL.EN.aspx
在Delphi中使用indy SMTP發送gmail郵件[轉]