Delphi Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

Delphi Examples

Bounced Mail
Bz2
Character Encoding
CSV
DKIM / DomainKey
Digital Certificates
Digital Signatures
DH Key Exchange
DSA
Email
Email Object
FTP
HTML Conversion
HTTP
IMAP
Encryption
MHT / HTML Email
NTLM
POP3
RSA
S/MIME
SMTP
Socket
Spider
SFTP
SSH
SSH Key
SSH Tunnel
String
Tar
Upload
XML
XMP
Zip Compression

More Examples...
Amazon S3
Byte Array
FileAccess
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
Bzip2
LZW

Type Conversion

 

Article: Understanding COM References in Delphi

IMAP Download All Email One at a Time

Download Chilkat Email ActiveX

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.)

Download 32-bit Chilkat IMAP ActiveX (.msi)

Download All 32-bit Chilkat ActiveX Components (.zip)

Download All 64-bit Chilkat ActiveX Components (.zip)

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.

Mail Component · .NET Email Component · XML Parser