Visual FoxPro
Visual FoxPro
Get the Binary Bytes of a MIME Body or Sub-Part Body
See more MIME Examples
Demonstrates the GetBodyBinary method. The MIME data file used in this example is available at MIME Sample File.Chilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loMime
LOCAL loMpRelated
LOCAL loPJpg
LOCAL loJpgBytes
LOCAL loFac
lnSuccess = 0
* This example requires the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.
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 = 0) 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
*
* This example will get the JPG image data bytes.
loMpRelated = CreateObject('Chilkat.Mime')
lnSuccess = loMime.PartAt(1,loMpRelated)
IF (lnSuccess = 0) THEN
? loMime.LastErrorText
RELEASE loMime
RELEASE loMpRelated
CANCEL
ENDIF
loPJpg = CreateObject('Chilkat.Mime')
lnSuccess = loMpRelated.PartAt(1,loPJpg)
IF (lnSuccess = 0) THEN
? loMpRelated.LastErrorText
RELEASE loMime
RELEASE loMpRelated
RELEASE loPJpg
CANCEL
ENDIF
loJpgBytes = loPJpg.GetBodyBinary()
* If these bytes are saved to a file, it will be a valid JPG image.
loFac = CreateObject('Chilkat.FileAccess')
lnSuccess = loFac.WriteEntireFile("qa_output/starfish20.jpg",loJpgBytes)
? "success = " + STR(lnSuccess)
* --------------------------------------------------------------
* --------------------------------------------------------------
* 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
RELEASE loMpRelated
RELEASE loPJpg
RELEASE loFac