我有一个客户端试图连接 SMTP 服务器。我将 OnStatus 事件链接到 smtp 客户端并查看
Resolving / Connecting / Connected 状态。但有时在尝试连接时会挂断/应用程序冻结。不过,我看到 OnStatus 引发了 Connected 状态。可能是什么问题。我排除了 smtp 上的 Resolving DNS ans et both ConnectTimeout 和 Readtimeout 设置,如下所示:
smtp.OnStatus := SMTPStatus;
smtp.ConnectTimeout := 10000;
smtp.ReadTimeout := 10000;
smtp.Connect;
// SOMETIMES MY LOG DOES NOT GET HERE Log('AfterConnect');
if smtp.Connected then
begin
smtp.Send(Mess);
smtp.Disconnect;
end
在大约 600KB 的附件上,它似乎卡在对附件部分进行编码并且永远不会完成,目前编码类型是默认类型。
10/3/2012 10:21:43 AM Status: Resolving hostname XXXXXXXXXX.com.
10/3/2012 10:21:43 AM Status: Connecting to 10.5.2.171.
10/3/2012 10:21:44 AM Status: Connected.
10/3/2012 10:21:45 AM Status: Encoding text
10/3/2012 10:21:45 AM Status: Encoding attachment