Sample code for 30+ languages & platforms
C

Set the Email Date Header to the Current System Date/Time

Demonstrates how to set the Date header field of an email to the computer's current date/time. Note: When an email object is instantiated, the Date header field is automatically added and initialized to the current system date/time. The need to explicitly set the Date header could arise when loading an email from a .eml.

Chilkat C Downloads

C
#include <C_CkEmail.h>
#include <C_CkDateTime.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkEmail email;
    HCkDateTime dateTime;

    success = FALSE;

    email = CkEmail_Create();

    // At this point, a new email object has been instantiated, and it
    // already has a Date header field containing the current date/time.
    printf("Date: %s\n",CkEmail_emailDateStr(email));

    // We can also get the Date header like this:
    printf("Date: %s\n",CkEmail_getHeaderField(email,"Date"));

    // Load a .eml into the email object:
    success = CkEmail_LoadEml(email,"myEmlFiles/someEmail.eml");
    if (success != TRUE) {
        printf("%s\n",CkEmail_lastErrorText(email));
        CkEmail_Dispose(email);
        return;
    }

    // Show the Date that was in the .eml
    printf("Date: %s\n",CkEmail_emailDateStr(email));

    // Now the Date header contains whatever was in the .eml
    // Let's update it to the current system date/time..

    dateTime = CkDateTime_Create();

    CkDateTime_SetFromCurrentSystemTime(dateTime);

    success = CkEmail_SetDt(email,dateTime);
    if (success != TRUE) {
        printf("%s\n",CkEmail_lastErrorText(email));
        CkEmail_Dispose(email);
        CkDateTime_Dispose(dateTime);
        return;
    }

    // Now show that the Date is the current system time:
    printf("Date: %s\n",CkEmail_emailDateStr(email));
    printf("Date: %s\n",CkEmail_getHeaderField(email,"Date"));


    CkEmail_Dispose(email);
    CkDateTime_Dispose(dateTime);

    }