Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PureBasic) Append Part to MIMEDemonstrates the AppendPart method for adding sub-parts to MIME.
IncludeFile "CkMime.pb" Procedure ChilkatExample() ; This example requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. success.i ; Create a text/plain part. ptMime.i = CkMime::ckCreate() If ptMime.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkMime::ckSetBodyFromPlainText(ptMime,"This is the plain text body") Debug CkMime::ckGetMime(ptMime) Debug "****" ; The ptMime contains: ; --------------------------------------- ; Content-Type: text/plain ; Content-Transfer-Encoding: 7bit ; ; This is the plain text body ; --------------------------------------- ; Start with an empty MIME object... topLevelMime.i = CkMime::ckCreate() If topLevelMime.i = 0 Debug "Failed to create object." ProcedureReturn EndIf ; Initialize it to a multipart Content-Type. We'll use multipart/mixed. CkMime::ckNewMultipartMixed(topLevelMime) ; Append the ptMime as a child. CkMime::ckAppendPart(topLevelMime,ptMime) Debug CkMime::ckGetMime(topLevelMime) Debug "****" ; 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::ckSetBody(ptMime,"this is the new plain text body.") ; topLevelMime is unchanged. Debug CkMime::ckGetMime(topLevelMime) Debug "****" ; To change the content in topLevelMime, we must get the text/plain part. ; For example: ptMime2.i = CkMime::ckGetPart(topLevelMime,0) CkMime::ckSetBody(ptMime2,"this is the new plain text body.") CkMime::ckDispose(ptMime2) ; Now topLevelMime is changed. Debug CkMime::ckGetMime(topLevelMime) CkMime::ckDispose(ptMime) CkMime::ckDispose(topLevelMime) ProcedureReturn EndProcedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.