Sample code for 30+ languages & platforms
PowerBuilder

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 PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Email
oleobject loo_DateTime

li_Success = 0

loo_Email = create oleobject
li_rc = loo_Email.ConnectToNewObject("Chilkat.Email")
if li_rc < 0 then
    destroy loo_Email
    MessageBox("Error","Connecting to COM object failed")
    return
end if

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

// We can also get the Date header like this:
Write-Debug "Date: " + loo_Email.GetHeaderField("Date")

// Load a .eml into the email object:
li_Success = loo_Email.LoadEml("myEmlFiles/someEmail.eml")
if li_Success <> 1 then
    Write-Debug loo_Email.LastErrorText
    destroy loo_Email
    return
end if

// Show the Date that was in the .eml
Write-Debug "Date: " + loo_Email.EmailDateStr

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

loo_DateTime = create oleobject
li_rc = loo_DateTime.ConnectToNewObject("Chilkat.CkDateTime")

loo_DateTime.SetFromCurrentSystemTime()

li_Success = loo_Email.SetDt(loo_DateTime)
if li_Success <> 1 then
    Write-Debug loo_Email.LastErrorText
    destroy loo_Email
    destroy loo_DateTime
    return
end if

// Now show that the Date is the current system time:
Write-Debug "Date: " + loo_Email.EmailDateStr
Write-Debug "Date: " + loo_Email.GetHeaderField("Date")


destroy loo_Email
destroy loo_DateTime