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
(C) Add Binary Email Attachment from In-Memory BytesDemonstrates how to add an attachment to an email via the AddDataAttachment and AddDataAttachment2 methods.
#include <C_CkEmail.h> #include <C_CkFileAccess.h> #include <C_CkByteData.h> void ChilkatSample(void) { HCkEmail email; BOOL success; HCkFileAccess fac; HCkByteData jpgBytes; email = CkEmail_Create(); // First populate a simple email. CkEmail_putSubject(email,"This is the subject."); CkEmail_putBody(email,"This is a simple email body."); CkEmail_putFrom(email,"Chilkat Software <support@chilkatsoft.com>"); CkEmail_AddTo(email,"Some Recipient","someRecipient@somewhere.com"); // Load a JPG file. // The actual source of your attachment data can come from anywhere. // The point here is that we're first getting the bytes in memory, and THEN adding // the bytes as an attachment. fac = CkFileAccess_Create(); jpgBytes = CkByteData_Create(); success = CkFileAccess_ReadEntireFile(fac,"qa_data/jpg/starfish20.jpg",jpgBytes); // Add the JPG bytes via AddDataAttachment. CkEmail_AddDataAttachment(email,"tinyStarfish.jpg",jpgBytes); // We could also add the JPG and explicitly set the content-type w/ AddDataAttachment2 CkEmail_AddDataAttachment2(email,"teenyStarfish.jpg",jpgBytes,"image/jpg"); // Examine the MIME: printf("%s\n",CkEmail_getMime(email)); // This is the MIME of the email: // (Note: All headers beginning with "CKX-" are automatically removed by Chilkat when sending..) // MIME-Version: 1.0 // Date: Mon, 17 Oct 2016 19:28:30 -0500 // Message-ID: <44E3519660F8C3B1F0D95F25D1FD5B3840C3E3FE@CHILKAT13> // Content-Type: multipart/mixed; boundary="------------020509000105040006080600" // X-Priority: 3 (Normal) // Subject: This is the subject. // From: "Chilkat Software" <support@chilkatsoft.com> // CKX-Bounce-Address: support@chilkatsoft.com // To: "Some Recipient" <someRecipient@somewhere.com> // // --------------020509000105040006080600 // Content-Type: text/plain // Content-Transfer-Encoding: 7bit // // This is a simple email body. // --------------020509000105040006080600 // Content-Type: image/jpeg; name="tinyStarfish.jpg" // Content-Transfer-Encoding: base64 // Content-Disposition: attachment; filename="tinyStarfish.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== // // --------------020509000105040006080600 // Content-Type: image/jpg; name="teenyStarfish.jpg" // Content-Transfer-Encoding: base64 // Content-Disposition: attachment; filename="teenyStarfish.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== // // --------------020509000105040006080600-- // CkEmail_Dispose(email); CkFileAccess_Dispose(fac); CkByteData_Dispose(jpgBytes); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.