PureBasic
PureBasic
Load an Email from MIME in a StringBuilder
See more Email Object Examples
Demonstrates the Chilkat Email.SetFromMimeSb method, which loads an email from the MIME text stored in a StringBuilder object. On success, it replaces the entire current email. This example serializes one email into a StringBuilder with GetMimeSb, then reconstructs it in a second object.
Background: This is the
StringBuilder counterpart to SetFromMimeText. When the MIME already lives in a StringBuilder — perhaps assembled or edited there — passing it directly avoids converting to an intermediate string, which is more efficient for large messages.Chilkat PureBasic Downloads
IncludeFile "CkStringBuilder.pb"
IncludeFile "CkEmail.pb"
Procedure ChilkatExample()
success.i = 0
; Demonstrates the SetFromMimeSb method, which loads an email from MIME text stored in a
; StringBuilder object. On success, it replaces the entire current email.
; Build a source email and get its MIME into a StringBuilder.
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 from a StringBuilder.")
sbMime.i = CkStringBuilder::ckCreate()
If sbMime.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkEmail::ckGetMimeSb(source,sbMime)
; Load a new email object from the StringBuilder MIME.
email.i = CkEmail::ckCreate()
If email.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkEmail::ckSetFromMimeSb(email,sbMime)
If success = 0
Debug CkEmail::ckLastErrorText(email)
CkEmail::ckDispose(source)
CkStringBuilder::ckDispose(sbMime)
CkEmail::ckDispose(email)
ProcedureReturn
EndIf
Debug "Loaded subject: " + CkEmail::ckSubject(email)
CkEmail::ckDispose(source)
CkStringBuilder::ckDispose(sbMime)
CkEmail::ckDispose(email)
ProcedureReturn
EndProcedure