C
C
Load an Email from a Chilkat XML String
See more Email Object Examples
Demonstrates the Chilkat Email.SetFromXmlText method, which loads an email from a Chilkat XML string (as produced by GetXml). On success, it replaces the entire current email. This example serializes one email to XML, then reconstructs it in a second object.
Background: This loads Chilkat's XML email representation from a string — the in-memory counterpart to
LoadXml. The XML format is an alternative to standard MIME, but for most purposes the MIME form (SetFromMimeText / GetMime) is preferred: it is interoperable and also preserves Chilkat's CKX- metadata headers (which are always removed before an email is sent), so the XML format offers no metadata advantage.Chilkat C Downloads
#include <C_CkEmail.h>
void ChilkatSample(void)
{
BOOL success;
HCkEmail source;
const char *xmlText;
HCkEmail email;
success = FALSE;
// Demonstrates the SetFromXmlText method, which loads an email from a Chilkat XML string.
// On success, it replaces the entire current email.
// Build a source email and serialize it to Chilkat XML.
source = CkEmail_Create();
CkEmail_putSubject(source,"Source message");
CkEmail_putFrom(source,"alice@example.com");
CkEmail_putBody(source,"Hello!");
xmlText = CkEmail_getXml(source);
// Load a new email object from the XML string.
email = CkEmail_Create();
success = CkEmail_SetFromXmlText(email,xmlText);
if (success == FALSE) {
printf("%s\n",CkEmail_lastErrorText(email));
CkEmail_Dispose(source);
CkEmail_Dispose(email);
return;
}
printf("Loaded subject: %s\n",CkEmail_subject(email));
CkEmail_Dispose(source);
CkEmail_Dispose(email);
}