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++) Create Non-Multipart Email with XML Body that is an AttachmentSee more SMTP ExamplesCreates an email where the only body is a binary WAV file. The technique used in the example could be applied to other binary files, such as PDF, MS-WORD docs, Excel docs, etc.
#include <CkEmail.h> #include <CkMailMan.h> void ChilkatSample(void) { // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // The goal of this example is to create an email that has this MIME format, // where the body of the email is XML using base64 encoding, // and the Content-Type and Content-Disposition are set as indicated. // Date: Wed, 23 Aug 2023 09:01:52 +0200 (CEST) // From: joe@example1.com // Subject: [v=EMCS.NL][a=NL****][k=****][s=0] // To: mary@example2.com // MIME-Version: 1.0 // Content-Type: application/octet-stream; charset=us-ascii; name=6bd8dfe259b3a42c90a28a82b5fc6e77.txt // Content-Transfer-Encoding: Base64 // Content-Disposition: attachment; filename=6bd8dfe259b3a42c90a28a82b5fc6e77.txt // Message-Id: <......> // // <multi-line base64 encoded XML here> bool success = true; const char *xmlBody = "<ie:IE801 xmlns:ie=\"urn:publicid:-:EC:DGTAXUD:EMCS:PHASE4:IE801:V3.01\" xmlns:tms=\"urn:publicid:-:EC:DGTAXUD:EMCS:PHASE4:TMS:V3.01\">....</ie:IE801>"; CkEmail email; // Add subject, TO, FROM, etc. email.put_Subject("[v=EMCS.NL][a=NL****][k=****][s=0]"); email.put_From("joe@example1.com"); success = email.AddTo("Mary","mary@example2.com"); email.put_Body(xmlBody); email.AddHeaderField("Content-Transfer-Encoding","Base64"); email.AddHeaderField("Content-Type","application/octet-stream; charset=us-ascii; name=6bd8dfe259b3a42c90a28a82b5fc6e77.txt"); email.AddHeaderField("Content-Disposition","attachment; filename=6bd8dfe259b3a42c90a28a82b5fc6e77.txt"); // Your email is ready to send CkMailMan mailman; mailman.put_SmtpHost("smtp.my_mail_server.com"); mailman.put_SmtpUsername("myUsername"); mailman.put_SmtpPassword("myPassword"); mailman.put_SmtpPort(465); mailman.put_SmtpSsl(true); mailman.put_StartTLS(true); success = mailman.SendEmail(email); if (success != true) { std::cout << mailman.lastErrorText() << "\r\n"; return; } success = mailman.CloseSmtpConnection(); if (success != true) { std::cout << "Connection to SMTP server not closed cleanly." << "\r\n"; } std::cout << "Mail Sent!" << "\r\n"; } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.