Sample code for 30+ languages & platforms
Objective-C

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 Objective-C Downloads

Objective-C
#import <CkoEmail.h>

BOOL success = NO;

//  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.
CkoEmail *innerEmail = [[CkoEmail alloc] init];
innerEmail.Subject = @"Embedded message";
innerEmail.From = @"alice@example.com";
innerEmail.Body = @"This is the embedded message.";

CkoEmail *email = [[CkoEmail alloc] init];
email.Subject = @"Has an attached message";
success = [email AttachEmail: innerEmail];
if (success == NO) {
    NSLog(@"%@",email.LastErrorText);
    return true;
}

//  Copy the first embedded message (index 0) into its own Email object.
CkoEmail *attached = [[CkoEmail alloc] init];
success = [email GetAttachedEmail: [NSNumber numberWithInt: 0] email: attached];
if (success == NO) {
    NSLog(@"%@",email.LastErrorText);
    return true;
}

NSLog(@"%@%@",@"Attached email subject: ",attached.Subject);
NSLog(@"%@%@",@"Attached email from: ",attached.From);