Tcl
Tcl
Append Part to MIME
See more MIME Examples
Demonstrates the AppendPart method for adding sub-parts to MIME.Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
# Create a text/plain part.
set ptMime [new_CkMime]
CkMime_SetBodyFromPlainText $ptMime "This is the plain text body"
puts [CkMime_getMime $ptMime]
puts "****"
# The ptMime contains:
# ---------------------------------------
# Content-Type: text/plain
# Content-Transfer-Encoding: 7bit
#
# This is the plain text body
# ---------------------------------------
# Start with an empty MIME object...
set topLevelMime [new_CkMime]
# Initialize it to a multipart Content-Type. We'll use multipart/mixed.
CkMime_NewMultipartMixed $topLevelMime
# Append the ptMime as a child.
CkMime_AppendPart $topLevelMime $ptMime
puts [CkMime_getMime $topLevelMime]
puts "****"
# The topLevelMime contains:
# --------------------------
# Content-Type: multipart/mixed; boundary="------------010907090104040508040404"
#
# --------------010907090104040508040404
# Content-Type: text/plain
# Content-Transfer-Encoding: 7bit
#
# This is the plain text body
# --------------010907090104040508040404--
#
# IMPORTANT: A copy of the MIME passed in AppendPart is appended.
# Therefore, in this case, changing ptMime does not change the text/plain sub-part in topLevelMime.
# For example:
CkMime_SetBody $ptMime "this is the new plain text body."
# topLevelMime is unchanged.
puts [CkMime_getMime $topLevelMime]
puts "****"
# To change the content in topLevelMime, we must get the text/plain part.
# For example:
set ptMime2 [new_CkMime]
CkMime_PartAt $topLevelMime 0 $ptMime2
CkMime_SetBody $ptMime2 "this is the new plain text body."
# Now topLevelMime is changed.
puts [CkMime_getMime $topLevelMime]
delete_CkMime $ptMime
delete_CkMime $topLevelMime
delete_CkMime $ptMime2