PureBasic
PureBasic
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 PureBasic Downloads
IncludeFile "CkEmail.pb"
Procedure ChilkatExample()
success.i = 0
; 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.i = CkEmail::ckCreate()
If source.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkEmail::setCkSubject(source, "Source message")
CkEmail::setCkFrom(source, "alice@example.com")
CkEmail::setCkBody(source, "Hello!")
xmlText.s = CkEmail::ckGetXml(source)
; Load a new email object from the XML string.
email.i = CkEmail::ckCreate()
If email.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkEmail::ckSetFromXmlText(email,xmlText)
If success = 0
Debug CkEmail::ckLastErrorText(email)
CkEmail::ckDispose(source)
CkEmail::ckDispose(email)
ProcedureReturn
EndIf
Debug "Loaded subject: " + CkEmail::ckSubject(email)
CkEmail::ckDispose(source)
CkEmail::ckDispose(email)
ProcedureReturn
EndProcedure