Visual C++ Examples

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

C++ Examples

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


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

 

 

 

 

 

 

 

 

Delete IMAP Email

Downloads:

MS Windows Visual C/C++ Libraries
Linux/CentOS C/C++ Libraries
MAC OS X C/C++ Libraries
Solaris C/C++ Libraries
C++ Builder Libraries

C++ code to delete email from an IMAP mailbox.

// The Chilkat IMAP library is also available as an ActiveX component
// or .NET class with the identical set of methods and properties.

// Delete email from an IMAP mailbox
void ImapExample(void)
    {
    CkImap imap;
    
    // Any string passed to UnlockComponent automatically begins the 30-day trial.
    if (!imap.UnlockComponent("30-day trial"))
	{
	printf("Failed to unlock component\n");
	imap.SaveLastError("errorLog.xml");
	return;
	}

    // Connect to the IMAP server.
    if (!imap.Connect("localhost"))
	{
	printf("Failed to connect to IMAP server\n");
	imap.SaveLastError("errorLog.xml");
	return;
	}

    // Login to the IMAP server.
    if (!imap.Login("chilkat","chilkat"))
	{
	printf("Failed to login to IMAP server\n");
	imap.SaveLastError("errorLog.xml");
	return;
	}
    
    imap.SelectMailbox("Inbox");

    // Get a message set containing all the message IDs
    // in the selected mailbox.
    CkMessageSet *msgSet = 0;
    msgSet = imap.Search("ALL",true);

    // Fetch all the mail headers into a bundle object.
    CkEmailBundle *bundle = 0;
    bundle = imap.FetchHeaders(*msgSet);
    if (!bundle)
	{
	printf("Failed to fetch bundle\n");
	imap.SaveLastError("errorLog.xml");
	return;
	}
    delete msgSet;

    // Loop over the bundle and mark for deletion all emails with "#SPAM#" in the subject
    CkEmail *email = 0;
    int i;

    CkString strSubject;

    for (i=0; i<bundle->get_MessageCount(); i++)
	{
	email = bundle->GetEmail(i);
	if (!email) continue;

	email->get_Subject(strSubject);

	if (strSubject.containsSubstring("#SPAM#"))
	    {
	    imap.SetMailFlag(*email,"Deleted",1);
	    printf("DELETING: %s\n",strSubject.getString());
	    }

	delete email;
	}

    // Expunge the marked emails from the mailbox.
    imap.Expunge();

    delete bundle;
    
    // Disconnect from the IMAP server.
    imap.Logout();
    imap.Disconnect();

    return;
    }

 

 

 

© 2000-2010 Chilkat Software, Inc. All Rights Reserved.

Mail Component · .NET Mail Component · XML Parser