C
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
#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);
}