gpt4 book ai didi

delphi - Indy POP3 定期接收电子邮件

转载 作者:行者123 更新时间:2023-12-03 15:58:37 26 4
gpt4 key购买 nike

我正在尝试用delphi构建一个应用程序,它必须每30秒检查一次gmail收件箱,并且必须处理特殊目的的电子邮件。

已经使用 Indy POP3 组件构建了该应用程序,部分代码如下。

    If Not POP3.Connected Then
Begin

POP3.Host := 'pop.gmail.com';
POP3.Port := 995;
POP3.Username := 'email';
POP3.Password := 'password';


SSL.Host := POP3.Host;
SSL.Port := POP3.Port;
SSL.Destination := SSL.Host + ':' + IntToStr(SSL.Port);
POP3.IOHandler := SSL;
POP3.UseTLS := utUseImplicitTLS;

// try etc...
POP3.Connect;
End;
MsgCnt := POP3.CheckMessages;

For i := 1 To MsgCnt Do
Begin

POP3.Retrieve(i, Msg);
// process message.. etc..

End;

我有一个问题,我将在下面尝试解释;

  • 如果我每 30 秒断开并连接 POP3,经过一番尝试服务器拒绝我的连接,我收到“套接字错误”。如果我尝试不每 30 秒连接一次 只需每 30 秒检索一次电子邮件 我我没有收到新电子邮件。
  • 而且,如果我没有断开连接或使用“DisconnectNotifyPeer”命令,我会一次又一次地收到阅读电子邮件,但如果我能解决上述问题,我会处理这个问题,但有关此问题的任何其他建议也会对我有帮助。 .

你觉得怎么样?我能做些什么来解决这个问题,不是每 30 秒连接一次,而是接收新电子邮件?是否有任何命令或函数的作用类似于 ADO Requery 方法或其他方法?

顺便说一下,我已经尝试过使用其他一些 godaddy 邮件帐户,但在工作 3 或 4 次后,它也拒绝了我的连接,我想用 gmail(谷歌应用程序)解决这个问题。

感谢您的帮助。

最佳答案

您没有显示所有代码,但我假设您将 POP3 控件保持连接到服务器...最终服务器会超时并断开连接。

connect
checkmessages
save messages
disconnect

只要正确断开连接,您应该能够每 30-60 秒通过 POP3 连接一次。但是,如果您想保持连接并立即更新新邮件,那么这就是 IMAP 功能,而不是 POP3。

关于delphi - Indy POP3 定期接收电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8488633/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com