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;
    }

    // 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;
    }

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