DataFlex
DataFlex
Force Quoted-Printable Encoding for Email
See more Email Object Examples
Demonstrates how to force the quoted-printable encoding for email.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Variant vEmail
Handle hoEmail
Handle hoMailman
String sTemp1
Move False To iSuccess
Get Create (RefClass(cComChilkatEmail)) To hoEmail
If (Not(IsComObjectCreated(hoEmail))) Begin
Send CreateComObject of hoEmail
End
Set ComSubject Of hoEmail To "test"
Set ComFrom Of hoEmail To "bob@example.com"
Get ComAddTo Of hoEmail "Mary" "mary@example.com" To iSuccess
// Add plain-text and HTML alternative bodies.
// Include some "=" chars so we can see the quoted-printable encoding when used..
Get ComAddPlainTextAlternativeBody Of hoEmail "This is a test == Hello World!" To iSuccess
Get ComAddHtmlAlternativeBody Of hoEmail "<html><body>This is a test == Hello World!</body></html>" To iSuccess
// Examine the MIME of the email to see that it does not use quoted-printable.
// (If the email contained non-usascii chars, it would automatically use quoted-printable.)
Get Create (RefClass(cComChilkatMailMan)) To hoMailman
If (Not(IsComObjectCreated(hoMailman))) Begin
Send CreateComObject of hoMailman
End
Get ComRenderToMime Of hoMailman Get pvComObject of hoEmail to vEmail
vEmail To sTemp1
Showln sTemp1
// Here is the MIME before forcing quoted-printable.
// Notice the Content-Transfer-Encoding is "7bit" (not "quoted-printable")
// MIME-Version: 1.0
// Date: Tue, 29 Sep 2020 12:26:52 -0500
// Message-ID: <CF274FC0A2F82B98A05B7507DF7DFB966A2C0EB8@CHILKATSLICE>
// Content-Type: multipart/alternative;
// boundary="------------080901080902080000030208"
// X-Priority: 3 (Normal)
// Subject: test
// From: bob@example.com
// To: Mary <mary@example.com>
//
// --------------080901080902080000030208
// Content-Transfer-Encoding: 7bit
// Content-Type: text/plain; charset=us-ascii; format=flowed
//
// This is a test == Hello World!
// --------------080901080902080000030208
// Content-Transfer-Encoding: 7bit
// Content-Type: text/html; charset=us-ascii
//
// <html><body>This is a test == Hello World!</body></html>
// --------------080901080902080000030208--
Showln "----"
// To force quoted-printable, set the Content-Transfer-Encoding header.
// It will automatically propagate as needed to the MIME sub-parts.
Send ComAddHeaderField To hoEmail "Content-Transfer-Encoding" "quoted-printable"
Get ComRenderToMime Of hoMailman Get pvComObject of hoEmail to vEmail
vEmail To sTemp1
Showln sTemp1
// MIME-Version: 1.0
// Date: Tue, 29 Sep 2020 12:26:52 -0500
// Message-ID: <F36B276E3A720FE5111D15CE9142C8909E1F5AB9@CHILKATSLICE>
// Content-Type: multipart/alternative;
// boundary="------------080901080902080000030208"
// X-Priority: 3 (Normal)
// Subject: test
// From: bob@example.com
// To: Mary <mary@example.com>
//
// --------------080901080902080000030208
// Content-Transfer-Encoding: quoted-printable
// Content-Type: text/plain; charset=us-ascii; format=flowed
//
// This is a test =3D=3D Hello World!
// --------------080901080902080000030208
// Content-Transfer-Encoding: quoted-printable
// Content-Type: text/html; charset=us-ascii
//
// <html><body>This is a test =3D=3D Hello World!</body></html>
// --------------080901080902080000030208--
End_Procedure