Programming Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

C Examples

Bounced Mail
Bz2
Certificates/Keys
Charset
CSV
Diffie-Hellman
DSA
Email Object
Encryption
FileAccess
FTP
HTML-to-XML
HTTP
IMAP
MHT / HTML Email
MIME
POP3
RSA
SMTP
Socket
Spider
SSH Key
SSH
SSH Tunnel
SFTP
Tar
Upload
XML
Zip


 

 

 

 

 

 

 

 

Delete All IMAP Email

Demonstrates two ways to delete all email in a mailbox on an IMAP server.

Download Chilkat C/C++ Libraries for VC++ 9.0 / Win32

Download Chilkat C/C++ Libraries for VC++ 8.0 / Win32

Download Chilkat C/C++ 64-bit Libraries for VC++ 8.0 / x64

Download Chilkat Visual Studio 2005 C/C++ Libs for Windows Mobile, Pocket PC, SmartPhone, WinCE

Download Chilkat C/C++ Libraries for VC++ 7.0 / Win32

Download Chilkat C/C++ Libraries for VC++ 6.0 / Win32

Download Chilkat C/C++ Libraries for VC++ 6.0, Win 95/98/NT4 Compatible

#include <C_CkImap.h>
#include <C_CkMessageSet.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkImap imap;
    HCkMessageSet messageSet;
    long i;
    long n;


    imap = CkImap_Create();

    //  Anything unlocks the component and begins a fully-functional 30-day trial.
    success = CkImap_UnlockComponent(imap,"Anything for 30-day trial");
    if (success != TRUE) {
        printf("%s\n",CkImap_lastErrorText(imap));
        return;
    }

    //  Turn on session logging:
    CkImap_putKeepSessionLog(imap,TRUE);

    //  Connect to an IMAP server.
    success = CkImap_Connect(imap,"mail.chilkatsoft.com");
    if (success != TRUE) {
        printf("%s\n",CkImap_lastErrorText(imap));
        return;
    }

    //  Login
    success = CkImap_Login(imap,"myLogin","myPassword");
    if (success != TRUE) {
        printf("%s\n",CkImap_lastErrorText(imap));
        return;
    }

    //  Select an IMAP mailbox
    success = CkImap_SelectMailbox(imap,"Inbox.RubyMail");
    if (success != TRUE) {
        printf("%s\n",CkImap_lastErrorText(imap));
        return;
    }

    //  Get the complete set of Uids for email in the selected mailbox.
    messageSet = CkImap_GetAllUids(imap);
    if (messageSet == 0 ) {
        printf("%s\n",CkImap_lastErrorText(imap));
        return;
    }

    //  Set the Deleted flag for each message.
    //  (ExpungeAndClose must be called to finalize the delete.)
    success = CkImap_SetFlags(imap,messageSet,"Deleted",1);
    if (success != TRUE) {
        printf("%s\n",CkImap_lastErrorText(imap));
        return;
    }

    //  Alternatively, the Deleted flag may be set for each UID
    //  individiually, but this is less efficient:

    n = CkMessageSet_getCount(messageSet);
    for (i = 0; i <= n - 1; i++) {
        success = CkImap_SetFlag(imap,CkMessageSet_GetId(messageSet,i),CkMessageSet_getHasUids(messageSet),"Deleted",1);
        if (success != TRUE) {
            printf("%s\n",CkImap_lastErrorText(imap));
            return;
        }

    }

    //  Expunge and close the mailbox.
    success = CkImap_ExpungeAndClose(imap);
    if (success != TRUE) {
        printf("%s\n",CkImap_lastErrorText(imap));
        return;
    }

    //  Display the session log.
    printf("%s\n",CkImap_sessionLog(imap));

    //  Disconnect from the IMAP server.
    CkImap_Disconnect(imap);

    CkMessageSet_Dispose(messageSet);

    CkImap_Dispose(imap);

    }

Need a specific example? Send a request to support@chilkatsoft.com

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