Chilkat
HOME
Android™
ASP
Visual Basic
VB.NET
C#
iOS (IPhone)
Objective-C
C++
C
MFC
Delphi
FoxPro
Java
Perl
PHP Extension
PHP ActiveX
Python
PowerShell
Ruby
SQL Server
VBScript
Download POP3 Email using UIDLsDemonstrates how to download POP3 email by first getting the complete set of UIDLs and then downloading email by calling FetchEmail for each UIDL. This is equivalent to calling CopyMail, except your application can process each email as it arrives instead of waiting for the entire bundle to be downloaded. Also, it's better protection against potential out-of-memory issues if your mailbox has a very large number of messages. There is no performance difference between fetching emails individually vs. calling CopyMail.
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CHILKATMAILLib2_TLB, CHILKATUTILLib_TLB, OleCtrls; ... procedure TForm1.Button1Click(Sender: TObject); var mailman: TChilkatMailMan2; success: Integer; sa: CHILKATUTILLib_TLB.ICkStringArray; i: Integer; n: Integer; email: CHILKATMAILLib2_TLB.IChilkatEmail2; uidl: String; begin // The mailman object is used for receiving (POP3) // and sending (SMTP) email. mailman := TChilkatMailMan2.Create(Self); // Any string argument automatically begins the 30-day trial. success := mailman.UnlockComponent('30-day trial'); if (success <> 1) then begin ShowMessage('Component unlock failed'); Exit; end; // Set the POP3 server's hostname mailman.MailHost := 'mail.chilkatsoft.com'; // Set the POP3 login/password. mailman.PopUsername := 'myLogin'; mailman.PopPassword := 'myPassword'; sa := mailman.GetUidls() as CHILKATUTILLib_TLB.ICkStringArray; if (sa = nil ) then begin Memo1.Lines.Add(mailman.LastErrorText); Exit; end; n := sa.Count; for i := 0 to n - 1 do begin uidl := sa.GetString(i); email := mailman.FetchEmail(uidl) As CHILKATMAILLib2_TLB.IChilkatEmail2; if (email = nil ) then begin Memo1.Lines.Add(mailman.LastErrorText); break; end; Memo1.Lines.Add(email.From); Memo1.Lines.Add(email.Subject + #13#10); end; mailman.Pop3EndSession(); end; |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.