Sample code for 30+ languages & platforms
Tcl

Get an Attachment's Bytes into a BinData

See more Email Object Examples

Demonstrates the Chilkat Email.GetAttachmentBd method, which copies an attachment's binary data into a BinData object. The first attachment is at index 0. This example adds an attachment and copies its bytes into a BinData, printing the byte count.

Background: This is the safe, binary way to extract an attachment — the counterpart to the text-oriented GetAttachmentString. Because attachments are often binary (PDFs, images, archives), copying the raw bytes into a BinData preserves them exactly, ready to write to a file, hash, or pass to another API without any charset conversion that could corrupt the data.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

#  Demonstrates the GetAttachmentBd method, which copies an attachment's binary data into a
#  BinData object.  The first attachment is at index 0.

set email [new_CkEmail]

CkEmail_put_Subject $email "GetAttachmentBd example"

CkEmail_AddStringAttachment $email "notes.txt" "Some notes stored in the attachment."

#  Copy the first attachment's binary data into a BinData object.
set bd [new_CkBinData]

set success [CkEmail_GetAttachmentBd $email 0 $bd]
if {$success == 0} then {
    puts [CkEmail_lastErrorText $email]
    delete_CkEmail $email
    delete_CkBinData $bd
    exit
}

puts "Attachment size (bytes) = [CkBinData_get_NumBytes $bd]"

delete_CkEmail $email
delete_CkBinData $bd