Sample code for 30+ languages & platforms
Unicode C++

Save Email Attachments to Filesystem

Saves email attachments to a directory.

Chilkat Unicode C++ Downloads

Unicode C++
#include <CkEmailW.h>

void ChilkatSample(void)
    {
    bool success = false;

    CkEmailW email;

    //  Load an email object containing attachments.
    //  This .eml can be downloaded from:
    //  http://www.example-code.com/testData/HtmlEmail.eml

    success = email.LoadEml(L"HtmlEmail.eml");
    if (success != true) {
        wprintf(L"%s\n",email.lastErrorText());
        return true;
    }

    //  If OverwriteExisting is turned on, files with the same
    //  name are overwritten.  If turned off, new/unique filenames
    //  are automatically generated.  The filenames actually saved
    //  are accessible via the GetAttachmentFilename method.
    email.put_OverwriteExisting(true);

    //  Save all attachments to the "myAttachments" subdirectory
    //  found under the calling process's current working directory.
    //  This directory is automatically created if it does not already
    //  exist.
    success = email.SaveAllAttachments(L"myAttachments");
    if (success != true) {
        wprintf(L"%s\n",email.lastErrorText());
        return true;
    }

    //  List the attachment filenames:
    int i;
    for (i = 0; i <= email.get_NumAttachments() - 1; i++) {
        wprintf(L"%s\n",email.getAttachmentFilename(i));
    }
    }