Sample code for 30+ languages & platforms
Dart

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 Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

void main() {
  // 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.
  final innerEmail = CkEmail();
  innerEmail.subject = 'Embedded message';
  innerEmail.from = 'alice@example.com';
  innerEmail.body = 'This is the embedded message.';

  final email = CkEmail();
  email.subject = 'Has an attached message';
  try {
    email.attachEmail(innerEmail);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  // Copy the first embedded message (index 0) into its own Email object.
  final attached = CkEmail();
  try {
    email.getAttachedEmail(0, attached);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  print('Attached email subject: ${attached.subject}');
  print('Attached email from: ${attached.from}');
}