Sample code for 30+ languages & platforms
Xbase++

Add Header Field to MIME Sub-Header in Email

See more Email Object Examples

Demonstrates how to add a header field to one of the attachment sub-headers in an email.

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oEmail

nSuccess := 0

//  This example requires the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

oEmail := CreateObject("Chilkat.Email")

oEmail:Subject := "test"
oEmail:AddTo("Chilkat", "support@chilkatsoft.com")
oEmail:From := "Matt <matt@example.com>"
oEmail:Body := "This is a simple plain-text body."

nSuccess := oEmail:AddFileAttachment2("qa_data/1.HPM", "application/x-hprimnet")
IF (nSuccess == 0)
    ? oEmail:LastErrorText
    oEmail:destroy()
    RETURN
ENDIF

//  Add a "ContentDescription: HPM/3.0" in the attachment's sub-header.
//  The 1st attachment is at index 0.
oEmail:AddAttachmentHeader(0, "Content-Description", "HPM/3.0")

//  Show the email MIME:
? oEmail:GetMime()

//  This is the output:

//  MIME-Version: 1.0
//  Date: Wed, 16 Jan 2019 10:05:18 -0600
//  Message-ID: <93B88835586270B7BE5202F84E171F29C10BA935@CHILKATSLICE>
//  Content-Type: multipart/mixed; boundary="------------000502000000020502010608"
//  X-Priority: 3 (Normal)
//  Subject: test
//  To: Chilkat <support@chilkatsoft.com>
//  From: Matt <matt@example.com>
//  
//  --------------000502000000020502010608
//  Content-Type: text/plain; charset=us-ascii; format=flowed
//  Content-Transfer-Encoding: 7bit
//  
//  This is a simple plain-text body.
//  --------------000502000000020502010608
//  Content-Type: application/x-hprimnet; name="1.HPM"
//  Content-Transfer-Encoding: base64
//  Content-Disposition: attachment; filename="1.HPM"
//  Content-Description: HPM/3.0
//  
//  FILE_DATA_IS_HERE...
//  
//  --------------000502000000020502010608--

oEmail:destroy()