掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
indy10でgmailを送信したい。 (ID:34543)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
既に発言された、皆さんの情報をまとめると 1.最新版の Indy10 をインストール http://homepage1.nifty.com/ht_deko/tech034.html 2.Indy10 用 の OpenSSL DLL を入手 http://indy.fulgan.com/SSL/ openssl-0.9.8k-i386-win32.zip (2009/06/13時点での最新版) 3.プロジェクトフォルダに上記 DLL を配置 4.コードを記述 uses ..., IdSMTP, IdSSLOpenSSL, IdMessage, IdExplicitTLSClientServerBase; procedure TForm1.IdMessage_InitializeISO(var VHeaderEncoding: Char; var VCharSet: string); begin VHeaderEncoding := 'B'; VCharSet := 'ISO-2022-JP'; end; procedure TForm1.Button1Click(Sender: TObject); var SMTP: TIdSMTP; SSL: TIdSSLIOHandlerSocketOpenSSL; Msg : TIdMessage; begin SMTP := TIdSMTP.Create(nil); try SMTP.Host := 'smtp.gmail.com'; SMTP.Port := 587; SMTP.Username := 'hoge@gmail.com'; // UserName SMTP.Password := 'hogehoge'; // Password SSL := TIdSSLIOHandlerSocketOpenSSL.Create; try SSL.Host := SMTP.Host; SSL.Port := SMTP.Port; SSL.Destination := SSL.Host + ':' + IntToStr(SSL.Port); SMTP.IOHandler := SSL; SMTP.UseTLS := utUseExplicitTLS; SMTP.Connect; Msg := TIdMessage.Create(SMTP); try Msg.OnInitializeISO := IdMessage_InitializeISO; Msg.ContentType := 'text/plain'; Msg.CharSet := 'ISO-2022-JP'; Msg.ContentTransferEncoding := '7bit'; Msg.From.Name := 'from@gmail.com'; // 送信者 Msg.From.Address := 'from@gmail.com'; // 送信者メールアドレス Msg.Recipients.EMailAddresses := 'to@gmail.com'; // 宛先メールアドレス Msg.Subject := 'こんにちは'; Msg.Body.Text := '本文です'; SMTP.Send(Msg); finally Msg.Free; end; SMTP.Disconnect; finally SSL.Free; end; finally SMTP.Free; end; end; 5.これでもダメならアカウントの記述やセキュリティ対策ソフトを疑ってみる。 このような感じになります。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.