Sample code for 30+ languages & platforms
Tcl

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 Tcl Downloads

Tcl

load ./chilkat.dll

set success 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.
set source [new_CkEmail]

CkEmail_put_Subject $source "Source message"
CkEmail_put_From $source "alice@example.com"
CkEmail_put_Body $source "Hello from a StringBuilder."
set sbMime [new_CkStringBuilder]

CkEmail_GetMimeSb $source $sbMime

#  Load a new email object from the StringBuilder MIME.
set email [new_CkEmail]

set success [CkEmail_SetFromMimeSb $email $sbMime]
if {$success == 0} then {
    puts [CkEmail_lastErrorText $email]
    delete_CkEmail $source
    delete_CkStringBuilder $sbMime
    delete_CkEmail $email
    exit
}

puts "Loaded subject: [CkEmail_subject $email]"

delete_CkEmail $source
delete_CkStringBuilder $sbMime
delete_CkEmail $email