このコードを使用して、delphi indyからテストメッセージをメールします。 私はTidSMTP、TIdMessageおよびIdSSLIOHandlerSocketOpenSSLを持っています。 beloweコードでDelphi Indy 10 Smtpエラー "現在認証できません"
私は、SSLでGmailを使用するように設定した場合、それは正常に動作します、しかし、すぐに私は私のcPanelのメールサーバのdetialsと私のサーバーの詳細を交換するとして、それがエラーを動作しません。
" unable to authenticate at present".
Outlook 2007で自分のアカウントをセットアップするのと同じ詳細を使用しました。コードは
IdSSLIOHandlerSocketOpenSSLの詳細です。
method := sslvsslv3
mode := sslmUnassigned
//rest default values
procedure Tfrmnotification.btnSendClick(Sender: TObject);
var
IdMsg : TIdMessage;
begin
begin
IdMsg := TIdMessage.Create(nil);
try
with TIdSMTP.Create(nil) do
try
// UserName := '[email protected]';
// Password := 'pass';
// Host := 'smtp.gmail.com';
// IOHandler := IdSSLIOHandlerSocketOpenSSL;
// Port := 587;
UserName := '[email protected]';
Password := 'password';
Host := 'outgoing server detials';// same as outlooks
IOHandler := IdSSLIOHandlerSocketOpenSSL;
Port := 465;// this is correct port
UseTLS:= utUseExplicitTLS;
IdMsg.Body.Add('test');
IdMsg.Recipients.emailAddresses := '[email protected]';
IdMsg.Subject := 'test';
IdMsg.From.Address := '[email protected]';
IdMsg.From.Name := 'john';
Connect;
Send(IdMsg);
Disconnect;
finally
Free;
end;
finally
IdMsg.free;
end;
showmessage('done');
end;
どのようなヘルプも魅力的です。
したがって、通信しているサーバーは交換サーバーですか?だから、問題はExchangeとのSSL接続を作ることですか? Mozilla Thunderbird Emailクライアントで試してみるとうまくいくのですか?うまく動作しない場合は、サーバー側で正しく動作するように構成されていないコードを記述しようとしているのはなぜですか? –
Hey Warren P.あなたの返事をありがとう。サーバーは交換サーバーではありません。私の前提は、Microsoft Office 2007からメールを送ることができれば、私は同じことを私のデルファイコードでもできるはずだということです。私は自分のコードやコンポーネントの属性で何かを見逃してしまったことを期待しています。 – Overklog
それでは、Exchange以外の電子メールプログラムで試してみて、必要な認証設定を把握してください。 TLSなど –