DataFlex
DataFlex
Auto-Generate or Explicitly Specify the Message-ID Email Header
Demonstrates how to auto-generate or explicitly specify the Message-ID header field.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Variant vEmail
Handle hoEmail
Handle hoMailman
String sMimeStr
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 ComBody Of hoEmail To "test"
Get ComAddTo Of hoEmail "Joe" "joe@example1.com" To iSuccess
Set ComFrom Of hoEmail To "mary@example2.com"
Get Create (RefClass(cComChilkatMailMan)) To hoMailman
If (Not(IsComObjectCreated(hoMailman))) Begin
Send CreateComObject of hoMailman
End
// When the mailman sends email, it renders the email to be sent,
// and then sends the rendered MIME.
// Instead of actually sending the email, this example will render
// to MIME so we can see what would be sent..
// We can explicitly set the Message-ID like this:
Set ComAutoGenMessageId Of hoMailman To False
Send ComAddHeaderField To hoEmail "Message-ID" "<xyz123@abc>"
Get pvComObject of hoEmail to vEmail
Get ComRenderToMime Of hoMailman vEmail To sMimeStr
Showln sMimeStr
// This is what we get:
// MIME-Version: 1.0
// Date: Mon, 20 Jul 2020 17:20:09 -0500
// Message-ID: <xyz123@abc>
// Content-Type: text/plain; charset=us-ascii; format=flowed
// Content-Transfer-Encoding: 7bit
// X-Priority: 3 (Normal)
// Subject: test
// To: Joe <joe@example1.com>
// From: mary@example2.com
//
// test
Showln "--------"
// If we auto-generate...
Set ComAutoGenMessageId Of hoMailman To True
Get pvComObject of hoEmail to vEmail
Get ComRenderToMime Of hoMailman vEmail To sMimeStr
Showln sMimeStr
// We get this:
// MIME-Version: 1.0
// Date: Mon, 20 Jul 2020 17:21:20 -0500
// Message-ID: <04EDE096BBFE484967F6398A973B0FCF6EA09A44@CHILKATSLICE>
// Content-Type: text/plain; charset=us-ascii; format=flowed
// Content-Transfer-Encoding: 7bit
// X-Priority: 3 (Normal)
// Subject: test
// To: Joe <joe@example1.com>
// From: mary@example2.com
//
// test
End_Procedure