Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(MFC) Get the Email Received Date/TimeGet's the date/time from the topmost Received header. The date/time of when you received an email may be different than the date/time stored in the Date header field, which if truthful, is the date when the email was sent. The Received header field will look something like this: Received: from mail.example.com (mail.example.com [99.255.255.99]) by inbound-smtp.us-west-2.amazonaws.com with SMTP id 72ma443vs1g0o6vqd8erojkpss35s0dt32h323o1 for admin@chilkatsoft.com; Wed, 25 Jul 2018 08:04:23 +0000 (UTC)The date/time is the final part delimited by a semicolon.
#include <CkEmail.h> #include <CkStringBuilder.h> #include <CkStringTable.h> void ChilkatSample(void) { CkString strOut; CkEmail email; bool success = email.LoadEml("qa_data/eml/p.eml"); if (success != true) { strOut.append(email.lastErrorText()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } CkStringBuilder sb; sb.Append(email.getHeaderField("Received")); // Replace semicolons with CRLF's int numReplaced = sb.Replace(";","\r\n"); CkStringTable st; st.AppendFromSb(sb); if (st.get_Count() == 0) { strOut.append("Should have at least one line.."); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } // The date/time string is the last line in the string table. sb.SetString(st.stringAt(st.get_Count() - 1)); sb.Trim(); strOut.append("Received date/time = "); strOut.append(sb.getAsString()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); } |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.