Sample code for 30+ languages & platforms
AutoIt

Append Part to MIME

See more MIME Examples

Demonstrates the AppendPart method for adding sub-parts to MIME.

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

;  This example requires the Chilkat API to have been previously unlocked.
;  See Global Unlock Sample for sample code.

;  Create a text/plain part.
$oPtMime = ObjCreate("Chilkat.Mime")
$oPtMime.SetBodyFromPlainText("This is the plain text body")
ConsoleWrite($oPtMime.GetMime() & @CRLF)
ConsoleWrite("****" & @CRLF)

;  The ptMime contains:
;  ---------------------------------------
;  	Content-Type: text/plain
;  	Content-Transfer-Encoding: 7bit
;  
;  	This is the plain text body
;  ---------------------------------------

;  Start with an empty MIME object...
$oTopLevelMime = ObjCreate("Chilkat.Mime")

;  Initialize it to a multipart Content-Type.  We'll use multipart/mixed.
$oTopLevelMime.NewMultipartMixed()

;  Append the ptMime as a child.
$oTopLevelMime.AppendPart($oPtMime)
ConsoleWrite($oTopLevelMime.GetMime() & @CRLF)
ConsoleWrite("****" & @CRLF)

;  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:
$oPtMime.SetBody "this is the new plain text body."
;  topLevelMime is unchanged.
ConsoleWrite($oTopLevelMime.GetMime() & @CRLF)
ConsoleWrite("****" & @CRLF)

;  To change the content in topLevelMime, we must get the text/plain part.
;  For example:

$oPtMime2 = ObjCreate("Chilkat.Mime")
$oTopLevelMime.PartAt(0,$oPtMime2)

$oPtMime2.SetBody "this is the new plain text body."
;  Now topLevelMime is changed.
ConsoleWrite($oTopLevelMime.GetMime() & @CRLF)