Sample code for 30+ languages & platforms
Xbase++

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 Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oEmail
LOCAL oDateTime

nSuccess := 0

oEmail := CreateObject("Chilkat.Email")

//  At this point, a new email object has been instantiated, and it
//  already has a Date header field containing the current date/time.
? "Date: " + oEmail:EmailDateStr

//  We can also get the Date header like this:
? "Date: " + oEmail:GetHeaderField("Date")

//  Load a .eml into the email object:
nSuccess := oEmail:LoadEml("myEmlFiles/someEmail.eml")
IF (nSuccess != 1)
    ? oEmail:LastErrorText
    oEmail:destroy()
    RETURN
ENDIF

//  Show the Date that was in the .eml
? "Date: " + oEmail:EmailDateStr

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

oDateTime := CreateObject("Chilkat.CkDateTime")

oDateTime:SetFromCurrentSystemTime()

nSuccess := oEmail:SetDt(oDateTime)
IF (nSuccess != 1)
    ? oEmail:LastErrorText
    oEmail:destroy()
    oDateTime:destroy()
    RETURN
ENDIF

//  Now show that the Date is the current system time:
? "Date: " + oEmail:EmailDateStr
? "Date: " + oEmail:GetHeaderField("Date")

oEmail:destroy()
oDateTime:destroy()