Sample code for 30+ languages & platforms
Lua

Get an Attached Message as an Email Object

See more Email Object Examples

Demonstrates the Chilkat Email.GetAttachedEmail method, which copies the Nth embedded message/rfc822 MIME part into another Email object. The index is zero-based (valid values run from 0 through NumAttachedMessages - 1). This example attaches an email and then extracts it back into its own object.

Background: When a message forwards another email as an attachment, that nested message is a complete email in its own right. GetAttachedEmail turns it back into a fully navigable Email object so you can read its subject, sender, body, and even its own attachments — essential for processing forwarded mail, or for tools that unpack reported spam/phishing to examine the original.

Chilkat Lua Downloads

Lua
local chilkat = require("chilkat")

-- Demonstrates the GetAttachedEmail method, which copies the Nth embedded message/rfc822
-- MIME part into another Email object.  The index is zero-based.

-- Build an inner email and attach it to an outer email.
local innerEmail = chilkat.Email.new()
innerEmail.subject = "Embedded message"
innerEmail.from = "alice@example.com"
innerEmail.body = "This is the embedded message."

local email = chilkat.Email.new()
email.subject = "Has an attached message"
local success = email:attach_email(innerEmail)
if not success then
    print(email.last_error_text)
    return
end

-- Copy the first embedded message (index 0) into its own Email object.
local attached = chilkat.Email.new()
success = email:get_attached_email(0, attached)
if not success then
    print(email.last_error_text)
    return
end

print("Attached email subject: " .. attached.subject)
print("Attached email from: " .. attached.from)