Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(C# UWP/WinRT) Forward an Email using CreateForwardReads an email from an IMAP server, creates a forward version of the email using the CreateForward method, and sends the email to another recipient.
// This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // Read the 1st (most recent) email in an Inbox. Chilkat.Imap imap = new Chilkat.Imap(); // Connect to an IMAP server. imap.Ssl = true; imap.Port = 993; bool success = await imap.ConnectAsync("imap.someMailServer.com"); if (success != true) { Debug.WriteLine(imap.LastErrorText); return; } // Login success = await imap.LoginAsync("myLogin","myPassword"); if (success != true) { Debug.WriteLine(imap.LastErrorText); return; } // Select an IMAP mailbox success = await imap.SelectMailboxAsync("Inbox"); if (success != true) { Debug.WriteLine(imap.LastErrorText); return; } int numEmails = imap.NumMessages; // Fetch the email at the last sequence number. // (We are assuming the Inbox has at least 1 email) Chilkat.Email email = await imap.FetchSingleAsync(numEmails,false); if (imap.LastMethodSuccess == false) { Debug.WriteLine(imap.LastErrorText); return; } // Disconnect from the IMAP server. await imap.DisconnectAsync(); Debug.WriteLine(email.Subject); Chilkat.Email eForward = email.CreateForward(); // The eForward email has no To or CC recipients yet. // Add one or more.. eForward.AddTo("Chilkat Support","support@chilkatsoft.com"); // We also need to specify the From name/address. eForward.FromAddress = "matt@someMailServer.com"; eForward.FromName = "Matt"; // If we wish to add text at the start of the email body: Chilkat.StringBuilder sbHtmlBody = new Chilkat.StringBuilder(); if (eForward.HasHtmlBody() == true) { sbHtmlBody.Append(eForward.GetHtmlBody()); sbHtmlBody.Prepend("<p>Hello, this is an email I'm forwarding to you...</p>"); eForward.SetHtmlBody(sbHtmlBody.GetAsString()); } Chilkat.StringBuilder sbPtBody = new Chilkat.StringBuilder(); if (eForward.HasPlainTextBody() == true) { sbPtBody.Append(eForward.GetPlainTextBody()); sbPtBody.Prepend("Hello, this is an email I'm forwarding to you...\r\n\r\n"); eForward.SetTextBody(sbPtBody.GetAsString(),"text/plain"); } // We could save the .eml, then double-click on it to view in our mail program, such as Outlook or Thunderbird.. eForward.SaveEml("qa_output/forward.eml"); // We could send (forward) the email.. Chilkat.MailMan mailman = new Chilkat.MailMan(); mailman.SmtpHost = "smtp.someMailServer.com"; mailman.SmtpUsername = "myLogin"; mailman.SmtpPassword = "myPassword"; mailman.SmtpPort = 587; mailman.StartTLS = true; success = await mailman.SendEmailAsync(eForward); if (success != true) { Debug.WriteLine(mailman.LastErrorText); return; } success = await mailman.CloseSmtpConnectionAsync(); if (success != true) { Debug.WriteLine("Connection to SMTP server not closed cleanly."); } Debug.WriteLine("Mail Sent!"); |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.