PureBasic
PureBasic
Load an Email from a Chilkat XML String
See more Email Object Examples
Demonstrates the Chilkat Email.LoadXmlString method, which loads an email from a Chilkat XML representation held in a string, typically obtained from GetXml. On success, the loaded message replaces the entire current email. This example serializes one email to XML, then reconstructs it in a second object.
Background: This is the in-memory (string) counterpart to
LoadXml, which reads from a file. Pairing GetXml with LoadXmlString lets you store an email's full state as text in a database column, cache, or message queue, then rebuild the Email object later — without touching the filesystem.Chilkat PureBasic Downloads
IncludeFile "CkEmail.pb"
Procedure ChilkatExample()
success.i = 0
; Demonstrates the LoadXmlString method, which loads an email from a Chilkat XML string
; (typically obtained from GetXml). On success, the loaded message replaces the entire
; current email.
; Create an email and serialize it to Chilkat XML (as GetXml would produce).
source.i = CkEmail::ckCreate()
If source.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkEmail::setCkSubject(source, "Saved email")
CkEmail::setCkFrom(source, "alice@example.com")
CkEmail::setCkBody(source, "Hello!")
xmlStr.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::ckLoadXmlString(email,xmlStr)
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