使用Indy9时的一个奇怪问题,谁能解决,我就把分全给他(或她),还给他(或她)磕个头!(200分)

  • 主题发起人 主题发起人 qby
  • 开始时间 开始时间
Q

qby

Unregistered / Unconfirmed
GUEST, unregistred user!
我从SMTP服务器读Response,如下:
TTCP: TIdTCPClient;
......
TTCP.DataTimeOut := 180000;
......
通过验证......
TTCP.WriteLn('MAIL FROM:<' + ReversePath + '>');
TTCP.WriteLn('RCPT TO:<' + ForwardPath + '>');
TTCP.WriteLn('DATA');
此时读服务器的响应,如:
SL.Clear;
S := TTCP.ReadLnWait;
while (Length(S) >= 3) do begin
SL.Add(S);
S := TTCP.ReadLnWait;
end;
但有时能正常读到响应,如:
250 Ok
250 Ok
354 End data with <CR><LF>.<CR><LF>

有时就读不到上面的响应,只能读到一个250 Ok
如果正确读到上面的响应后,再发邮件信息,如:
TTCP.WriteLn('Subject: test');
就会触发错误,信息是:"connection closed gracefully"

这是咋回事啊?各位帮我啊!!!
 
》》:"connection closed gracefully"

友好断开!是不是设置有问题?
 
后退
顶部