DataFlex
DataFlex
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 DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoEmail
Variant vDateTime
Handle hoDateTime
String sTemp1
Move False To iSuccess
Get Create (RefClass(cComChilkatEmail)) To hoEmail
If (Not(IsComObjectCreated(hoEmail))) Begin
Send CreateComObject of hoEmail
End
// At this point, a new email object has been instantiated, and it
// already has a Date header field containing the current date/time.
Get ComEmailDateStr Of hoEmail To sTemp1
Showln "Date: " sTemp1
// We can also get the Date header like this:
Get ComGetHeaderField Of hoEmail "Date" To sTemp1
Showln "Date: " sTemp1
// Load a .eml into the email object:
Get ComLoadEml Of hoEmail "myEmlFiles/someEmail.eml" To iSuccess
If (iSuccess <> True) Begin
Get ComLastErrorText Of hoEmail To sTemp1
Showln sTemp1
Procedure_Return
End
// Show the Date that was in the .eml
Get ComEmailDateStr Of hoEmail To sTemp1
Showln "Date: " sTemp1
// Now the Date header contains whatever was in the .eml
// Let's update it to the current system date/time..
Get Create (RefClass(cComCkDateTime)) To hoDateTime
If (Not(IsComObjectCreated(hoDateTime))) Begin
Send CreateComObject of hoDateTime
End
Get ComSetFromCurrentSystemTime Of hoDateTime To iSuccess
Get pvComObject of hoDateTime to vDateTime
Get ComSetDt Of hoEmail vDateTime To iSuccess
If (iSuccess <> True) Begin
Get ComLastErrorText Of hoEmail To sTemp1
Showln sTemp1
Procedure_Return
End
// Now show that the Date is the current system time:
Get ComEmailDateStr Of hoEmail To sTemp1
Showln "Date: " sTemp1
Get ComGetHeaderField Of hoEmail "Date" To sTemp1
Showln "Date: " sTemp1
End_Procedure