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
(Visual FoxPro) Add, Remove, Update MIME Header FieldsDemonstrates how to add, remove, or update the content of MIME header fields.
LOCAL loMime LOCAL lnSuccess LOCAL lnBAllOccurrences LOCAL loMpRelated LOCAL loPJpg * This example requires the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Mime') loMime = CreateObject('Chilkat.Mime') * The contents of this MIME file are shown below, * and is also available at https://www.chilkatsoft.com/sampleMime.txt lnSuccess = loMime.LoadMimeFile("qa_data/mime/sampleMime.txt") IF (lnSuccess <> 1) THEN ? loMime.LastErrorText RELEASE loMime CANCEL ENDIF * The MIME used in this example has the following nested structure * * multipart/alternative * text/plain * multipart/related * text/html * image/jpeg * * Adding a top-level MIME header is easy. loMime.AddHeaderField("hello-world","Hello World!") * If a header field of the same name already exists, the AddHeaderField * method adds a duplicate. loMime.AddHeaderField("Subject","This is the 2nd Subject header.") ? loMime.GetEntireHead() ? "-" * The top-level header now looks like this: * * Subject: Test email. * Content-Type: multipart/alternative; boundary="------------DB171738719FB06D67DEBAA0" * MIME-Version: 1.0 * hello-world: Hello World! * Subject: This is the 2nd Subject header. * * The RemoveHeaderField method can remove the 1st occurrance, or all occurrences. lnBAllOccurrences = 1 * Remove all occurrences of the Subject header; loMime.RemoveHeaderField("Subject",lnBAllOccurrences) ? loMime.GetEntireHead() ? "-" * After removing all Subject header fields, the top-level header now looks like this: * * Content-Type: multipart/alternative; boundary="------------DB171738719FB06D67DEBAA0" * MIME-Version: 1.0 * hello-world: Hello World! * * The content of a header field can be updated by calling SetHeaderField. * If the header field does not already exist, it is added. Otherwise it is updated. * Note: The order of header fields SHOULD never matter. loMime.SetHeaderField("hello-world","Goodbye World.") ? loMime.GetEntireHead() ? "-" * Now we have: * * Content-Type: multipart/alternative; boundary="------------DB171738719FB06D67DEBAA0" * MIME-Version: 1.0 * hello-world: Goodbye World. * * To add/update/delete header fields in sub-parts, navigate to * the sub-part and do the same.. loMpRelated = loMime.GetPart(1) loPJpg = loMpRelated.GetPart(1) * Add a header to the image/jpeg sub-header. loPJpg.SetHeaderField("CustomHeader","This is the custom header value.") RELEASE loPJpg RELEASE loMpRelated * View the entire MIME.. ? loMime.GetMime() * -------------------------------------------------------------- * -------------------------------------------------------------- * The MIME sample file loaded at the beginning of this example * contains the following MIME: * Subject: Test email. * Content-Type: multipart/alternative; * boundary="------------DB171738719FB06D67DEBAA0" * MIME-Version: 1.0 * * --------------DB171738719FB06D67DEBAA0 * Content-Type: text/plain; charset="utf-8"; format=flowed * Content-Transfer-Encoding: 7bit * * This is a test. * * --------------DB171738719FB06D67DEBAA0 * Content-Type: multipart/related; * boundary="------------A940F1230E6F0105F03DB2CB" * * --------------A940F1230E6F0105F03DB2CB * Content-Type: text/html; charset="utf-8" * Content-Transfer-Encoding: 8bit * * <html><head> * <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> * </head> * <body bgcolor="#FFFFFF" text="#000000"> * <p>This is a test. <img src="cid:part1.E16AE3B4.1505C436@chilkatsoft.com" height="20" width="20"></p> * </body> * </html> * * --------------A940F1230E6F0105F03DB2CB * Content-Type: image/jpeg; name="starfish20.jpg" * Content-Transfer-Encoding: base64 * Content-ID: <part1.E16AE3B4.1505C436@chilkatsoft.com> * Content-Disposition: inline; filename="starfish20.jpg" * * /9j/4AAQSkZJRgABAQEASABIAAD//gAmRmlsZSB3cml0dGVuIGJ5IEFkb2JlIFBob3Rvc2hvcD8g * NC4w/9sAQwAQCwwODAoQDg0OEhEQExgoGhgWFhgxIyUdKDozPTw5Mzg3QEhcTkBEV0U3OFBtUVdf * YmdoZz5NcXlwZHhcZWdj/9sAQwEREhIYFRgvGhovY0I4QmNjY2NjY2NjY2NjY2NjY2NjY2NjY2Nj * Y2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Nj/8IAEQgAFAAUAwERAAIRAQMRAf/EABcAAAMBAAAA * AAAAAAAAAAAAAAIDBAX/xAAYAQADAQEAAAAAAAAAAAAAAAABAgMEAP/aAAwDAQACEAMQAAAB2kZY * NNEijWKddfTmLgALWH//xAAbEAACAgMBAAAAAAAAAAAAAAABAgMRAAQSE//aAAgBAQABBQL0XqN+ * pM2aqJGMiqFFCyg7z//EABwRAAICAgMAAAAAAAAAAAAAAAERAAIQIQMSUf/aAAgBAwEBPwHqU5aq * Axx+y1tMQl4elj//xAAcEQEAAQUBAQAAAAAAAAAAAAABEQACEBIhA1H/2gAIAQIBAT8B3Bhqy7Zc * enyiwmGgDhiOzj//xAAdEAABAwUBAAAAAAAAAAAAAAABAAIREBIhIkFR/9oACAEBAAY/ArZyn+Cg * xtxWuJaoCnqDuin/xAAcEAABBAMBAAAAAAAAAAAAAAABABEhYRAxQVH/2gAIAQEAAT8hkEwPUUR9 * DYfE4nxtRpIkBTsayuALIiuY/9oADAMBAAIAAwAAABDWPTsf/8QAGhEAAwADAQAAAAAAAAAAAAAA * AAEREDFBIf/aAAgBAwEBPxC0DVPcWm+Ce4OesrkE6bjH/8QAGBEBAQEBAQAAAAAAAAAAAAAAAREA * QRD/2gAIAQIBAT8QahMiOc8YgSrnTY3ELclHXn//xAAcEAEBAAIDAQEAAAAAAAAAAAABEQAhMUFx * EFH/2gAIAQEAAT8Qn3igmSZSj+c4N4zapMy9IjFV98wncN2iuLFsCEbDGxQkI6RO/n//2Q== * * --------------A940F1230E6F0105F03DB2CB-- * * --------------DB171738719FB06D67DEBAA0-- * RELEASE loMime |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.