Y
yicheng
Unregistered / Unconfirmed
GUEST, unregistred user!
我在delphi采用indy中的TidSMTP与TidMessage开发了一个发送邮件的东东,请看代码:
procedure TForm1.Button1Click(Sender: TObject);
begin
with IdMessage1 do
begin
Clear; // 清除前一次產生的 body & headerm, 以免第二次按時重複
Body.Text:='adsfffffffffffffffffffffffffffffffffffffffffff';
From.Text :='yicheng@163.com'; // 寄件者
Recipients.EMailAddresses :='yicheng@163.com'; // 收件者
Subject :='';
end;
IdSMTP1.AuthenticationType := atLogin; {Simple Login}
IdSMTP1.Username :='yicheng';
IdSMTP1.Password :='******';
IdSMTP1.Host :='smtp.163.com';
IdSMTP1.Port := 25;
try
IdSMTP1.Connect;
try
IdSMTP1.Send(IdMessage1);
ShowMessage('E-Mail 已寄出');
finally
IdSMTP1.Disconnect;
end;
except
on e: exception do
begin
ShowMessage('Mail 寄送失敗:' + e.Message);
end;
end;
end;
这样,会出一个错误:bad sequence of command!
应该是命令次序出现错误。
这时,我修改了IdSMTP,屏掉IDSMTP中的 sendCmd('RSET')这句话,
运行程序,正常。也就是我可以正常发送邮件了。
现在,我将这段代码考到我的程序中,测试了一天,就是出现“bad sequence of commands”.
我可是一字不变的考过来的,却怎么会出现这样的问题???
procedure TForm1.Button1Click(Sender: TObject);
begin
with IdMessage1 do
begin
Clear; // 清除前一次產生的 body & headerm, 以免第二次按時重複
Body.Text:='adsfffffffffffffffffffffffffffffffffffffffffff';
From.Text :='yicheng@163.com'; // 寄件者
Recipients.EMailAddresses :='yicheng@163.com'; // 收件者
Subject :='';
end;
IdSMTP1.AuthenticationType := atLogin; {Simple Login}
IdSMTP1.Username :='yicheng';
IdSMTP1.Password :='******';
IdSMTP1.Host :='smtp.163.com';
IdSMTP1.Port := 25;
try
IdSMTP1.Connect;
try
IdSMTP1.Send(IdMessage1);
ShowMessage('E-Mail 已寄出');
finally
IdSMTP1.Disconnect;
end;
except
on e: exception do
begin
ShowMessage('Mail 寄送失敗:' + e.Message);
end;
end;
end;
这样,会出一个错误:bad sequence of command!
应该是命令次序出现错误。
这时,我修改了IdSMTP,屏掉IDSMTP中的 sendCmd('RSET')这句话,
运行程序,正常。也就是我可以正常发送邮件了。
现在,我将这段代码考到我的程序中,测试了一天,就是出现“bad sequence of commands”.
我可是一字不变的考过来的,却怎么会出现这样的问题???