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
(Delphi ActiveX) Append Part to MIMEDemonstrates the AppendPart method for adding sub-parts to MIME.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB; ... procedure TForm1.Button1Click(Sender: TObject); var success: Integer; ptMime: TChilkatMime; topLevelMime: TChilkatMime; ptMime2: IChilkatMime; begin // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // Create a text/plain part. ptMime := TChilkatMime.Create(Self); ptMime.SetBodyFromPlainText('This is the plain text body'); Memo1.Lines.Add(ptMime.GetMime()); Memo1.Lines.Add('****'); // The ptMime contains: // --------------------------------------- // Content-Type: text/plain // Content-Transfer-Encoding: 7bit // // This is the plain text body // --------------------------------------- // Start with an empty MIME object... topLevelMime := TChilkatMime.Create(Self); // Initialize it to a multipart Content-Type. We'll use multipart/mixed. topLevelMime.NewMultipartMixed(); // Append the ptMime as a child. topLevelMime.AppendPart(ptMime.ControlInterface); Memo1.Lines.Add(topLevelMime.GetMime()); Memo1.Lines.Add('****'); // 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: ptMime.SetBody('this is the new plain text body.'); // topLevelMime is unchanged. Memo1.Lines.Add(topLevelMime.GetMime()); Memo1.Lines.Add('****'); // To change the content in topLevelMime, we must get the text/plain part. // For example: ptMime2 := topLevelMime.GetPart(0); ptMime2.SetBody('this is the new plain text body.'); // Now topLevelMime is changed. Memo1.Lines.Add(topLevelMime.GetMime()); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.