IdSMTPでSASL認証をつかうには?


ぺんぷ  2004-11-07 00:38:32  No: 11656

Indyの IdSMTP,IdSASLコンポーネントをつかって
SMTP認証ありのメール送信処理を実装しようとしていますが、
送信途中で停止してしまい、送信できません(というより認証できていない)

具体的には IdSASLCollectionユニットのL154行目にエラーが出て停止します。なので、暗号方式の指定方法が悪いのでしょうか??

上記のコンポーネントのほかに、IdSASL_CRAM_MD5,IdSASLLogin,IdSASLPlain
などを組み込み、  オブジェクトインスペクタでTIdSMTP/SASLMechanismsのプロパティにPLAINを指定しています。  実際のソースは以下のような感じです。

どなたか正しい方法をご存知のかたがいらっしゃれば、
よろしくおねがいします。

-----------------------------------------------
   T_MSG := TIdMessage.Create(Self);

    with T_MSG do begin
        CharSet     := 'ISO-2022-JP';
        Host        := 'smtp.example.com';
        Username    := 'exman';
        Password    := 'exman';
        AuthType    :=  atSASL;

        ContentType   := 'text/plain';
        Body.Add('こんにちは');
        From.Text := 'exman@example.com';
        Recipients.EMailAddresses := 'to@example.com';
        Subject := '題名';
    end;

    with IdSMTP1 do begin
        AuthType := atSASL;
        Username := 'name';
        Password := 'pass'; 
        Host     := T_MST.Host;
        Port     := 25;
    end;

    IdSMTP1.Connect();
    IdSMTP1.Authenticate();

    IdSMTP1.Send(T_MSG);
    IdSMTP1.Disconnect();


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加