回 帖 发 新 帖 刷新版面

主题:小弟有问题求助!!怎样用DELPHI编程收发email?

小弟之前写的一段代码可以的,不知为何现在不能用了。
procedure TForm2.Button1Click(Sender: TObject);
begin
  //定义程序与SMTP服务器的连接类型:atlogin为用户密码登录;atnone匿名登录
  IdSMTP1.AuthenticationType:=atLogin;
  IdSMTP1.Host:=form1.edit1.Text;      //输入服务器的地址
  IdSMTP1.Port:=25;              //连接服务器的端口号
  IdSMTP1.Username:=form1.edit3.Text;  //输入使用者的账号
  IdSMTP1.Password:=form1.edit4.Text;  //输入使用者的密码
  try
    IdSMTP1.Connect;       //尝试与服务器进行连接
  except
    showmessage('连接SMTP服务器失败!');    //连接服务器失败
    exit;
  end;
  //程序与服务器连接后,便可以发送信件到目的信箱
  try
    with IdMessage1 do  //传送信件基本信息
    begin
     body.Clear;     //清空文本
     body.Assign(memo1.Lines); //填写正文内容
     From.Address:=edit3.Text; //设置发送者的地址
     recipients.EMailAddresses:=edit1.Text;  //设置邮件接收者的地址
     subject:=edit2.Text;     //设置邮件的主题
    end;
    IdSMTP1.Send(IdMessage1);   //发送信件
  finally
    showmessage('您的信件已成功发送');
    IdSMTP1.Disconnect;         //断开连接
  end;
end;

回复列表 (共6个回复)

沙发


发送邮件需要用到“身份验证”。在发送邮件时,需要把用户名、密码,变成BASE64编码,再发送过去验证。TNMSMTP控件没有提供身份验证的部分。

板凳

长尾兔兄弟,你能不能把你的收发email的程序发给我。谢谢!
我的邮箱:zhong_ww@163.com 

3 楼


麻烦给我把回贴评上50分好不好,评分后我就给你发。
----啊拉千辛万苦地求人告诉我的,总要有点回报吧[em12]

4 楼

兄弟,满意了吗

5 楼


http://www.programfan.com/club/showbbs.asp?id=163770

你先到上面这个地址,看看我这一贴吧。
把里面那位高人的代码复制下来,就是你要的程序。
如果你实在是要我编好的程序,那得等明天或后天了。呵呵

6 楼

兄弟,那上面介绍的是delphi6的nmsmtp控件,我现在使用的是delphi7的IdSMTP1和IdMessage1控件。我去年做的时候是可以发送email的。但现在不知为什么不能用了。总是提示“bad sequence of commands”,不知什么原因?请教大家!

我来回复

您尚未登录,请登录后再回复。点此登录或注册