Sample code for 30+ languages & platforms
PowerShell

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

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$success = $false

$email = New-Object 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: " + $email.EmailDateStr)

#  We can also get the Date header like this:
$("Date: " + $email.GetHeaderField("Date"))

#  Load a .eml into the email object:
$success = $email.LoadEml("myEmlFiles/someEmail.eml")
if ($success -ne $true) {
    $($email.LastErrorText)
    exit
}

#  Show the Date that was in the .eml
$("Date: " + $email.EmailDateStr)

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

$dateTime = New-Object Chilkat.CkDateTime

$dateTime.SetFromCurrentSystemTime()

$success = $email.SetDt($dateTime)
if ($success -ne $true) {
    $($email.LastErrorText)
    exit
}

#  Now show that the Date is the current system time:
$("Date: " + $email.EmailDateStr)
$("Date: " + $email.GetHeaderField("Date"))