Delphi ActiveX
Delphi ActiveX
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 Delphi ActiveX Downloads
var
success: Integer;
innerEmail: TChilkatEmail;
email: TChilkatEmail;
attached: TChilkatEmail;
begin
success := 0;
// 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.
innerEmail := TChilkatEmail.Create(Self);
innerEmail.Subject := 'Embedded message';
innerEmail.From := 'alice@example.com';
innerEmail.Body := 'This is the embedded message.';
email := TChilkatEmail.Create(Self);
email.Subject := 'Has an attached message';
success := email.AttachEmail(innerEmail.ControlInterface);
if (success = 0) then
begin
Memo1.Lines.Add(email.LastErrorText);
Exit;
end;
// Copy the first embedded message (index 0) into its own Email object.
attached := TChilkatEmail.Create(Self);
success := email.GetAttachedEmail(0,attached.ControlInterface);
if (success = 0) then
begin
Memo1.Lines.Add(email.LastErrorText);
Exit;
end;
Memo1.Lines.Add('Attached email subject: ' + attached.Subject);
Memo1.Lines.Add('Attached email from: ' + attached.From);