Sample code for 30+ languages & platforms
Unicode C

Create a Reply Email

See more Email Object Examples

Demonstrates the Chilkat Email.ToReply method, which generates a reply email with updated header and body fields so it can be sent as a reply. Attachments are excluded from the reply, but attached messages are included. The source email is not modified. This example creates a reply and prints its MIME.

Background: Replying is more than swapping sender and recipient: the To is set from the original's reply address, the subject gets an Re: prefix, the original text is quoted, and threading headers (In-Reply-To, References) are added so mail clients group the conversation. ToReply assembles all of that, leaving a message you can edit and send. Dropping attachments is the usual reply convention — you rarely echo the sender's files back to them.

Chilkat Unicode C Downloads

Unicode C
#include <C_CkEmailW.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkEmailW email;
    HCkEmailW reply;

    success = FALSE;

    //  Demonstrates the ToReply method, which generates a reply email with updated header and
    //  body fields ready to send as a reply.  Attachments are excluded from the reply, but
    //  attached messages are included.  The source email is not modified.

    email = CkEmailW_Create();
    CkEmailW_putSubject(email,L"Project update");
    CkEmailW_putFrom(email,L"alice@example.com");
    CkEmailW_AddTo(email,L"Bob",L"bob@example.com");
    CkEmailW_putBody(email,L"Here is the project update.");

    //  Create a reply email based on this message.
    reply = CkEmailW_Create();

    success = CkEmailW_ToReply(email,reply);
    if (success == FALSE) {
        wprintf(L"%s\n",CkEmailW_lastErrorText(email));
        CkEmailW_Dispose(email);
        CkEmailW_Dispose(reply);
        return true;
    }

    //  The reply is addressed and quoted, ready to edit and send.
    wprintf(L"%s\n",CkEmailW_getMime(reply));


    CkEmailW_Dispose(email);
    CkEmailW_Dispose(reply);

    }