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
IMAP Download All Email One at a Time
Demonstrates how to download every email in an IMAP mailbox one at a time as a MIME string or as an email object. (The MIME contains the full contents of the email including all attachments.)
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CHILKATIMAPLib_TLB, OleCtrls; ... procedure TForm1.Button1Click(Sender: TObject); var imap: TChilkatImap; success: Integer; bUid: Integer; mimeStr: String; i: Integer; n: Integer; email: CHILKATMAILLib2_TLB.IChilkatEmail2; begin imap := TChilkatImap.Create(Self); // Anything unlocks the component and begins a fully-functional 30-day trial. success := imap.UnlockComponent('Anything for 30-day trial'); if (success <> 1) then begin ShowMessage(imap.LastErrorText); Exit; end; // Connect to an IMAP server. success := imap.Connect('mail.chilkatsoft.com'); if (success <> 1) then begin ShowMessage(imap.LastErrorText); Exit; end; // Login success := imap.Login('myLogin','myPassword'); if (success <> 1) then begin ShowMessage(imap.LastErrorText); Exit; end; // Select an IMAP mailbox success := imap.SelectMailbox('Inbox'); if (success <> 1) then begin ShowMessage(imap.LastErrorText); Exit; end; // Once the mailbox is selected, the NumMessages property // will contain the number of messages in the mailbox. // You may loop from 1 to NumMessages to // fetch each message by sequence number. bUid := 0; n := imap.NumMessages; for i := 1 to n do begin // Download the email by sequence number. mimeStr := imap.FetchSingleAsMime(i,bUid); // ... your application may process each MIME string... end; // An alternative is to download each email in the form of an // email object, like this: for i := 1 to n do begin // Download the email by sequence number. email := imap.FetchSingle(i,bUid) As CHILKATMAILLib2_TLB.IChilkatEmail2; // ... your application may process the email object... end; // Disconnect from the IMAP server. imap.Disconnect(); end; |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.