Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
|
Load MHT and Send as EmailLoad a .MHT file and send it as email.
// The mailman object is used for sending and receiving email. Chilkat.MailMan mailman = new Chilkat.MailMan(); // Any string argument automatically begins the 30-day trial. bool success; success = mailman.UnlockComponent("30-day trial"); if (success != true) { MessageBox.Show("Component unlock failed"); return; } // Set the SMTP server. mailman.SmtpHost = "smtp.comcast.net"; // Create a new email object Chilkat.Email email = new Chilkat.Email(); // MHT is MIME and therefore can be loaded directly // into an email object via the email.LoadEml method. // However, if the HTML sub-part of the MIME contains // header fields such as this: // Content-ID: <BalanceSheet> // Content-Disposition: inline; // filename="BalanceSheet" // Content-Type: text/html; // name="BalanceSheet"; // charset="utf-8" // Microsoft Outlook will interpret this as an attached HTML file // rather than the HTML body of the email. Interestingly, // Mozilla Thunderbird handles it correctly, but Outlook does not. // Google's GMail also handles it correctly. Yahoo Mail doesn't // know what to do and displays nothing -- not even the "attachment". // Rather than loading the MHT into the email object, we'll // first load it into a Chilkat MIME object and check for // these headers. We want the header fields of the HTML sub-part // to look like this: // Content-Type: text/html; // charset="utf-8" // To do so, we'll remove the Content-ID and Content-Disposition // header fields, and the "name" attribute from the // Content-Type header. // Note: Chilkat MIME is a separate product. This code // would require licenses to both Chilkat Email and Chilkat Mime, // or alternatively a Chilkat Bundle license (which includes // all Chilkat components). Chilkat.Mime mime = new Chilkat.Mime(); success = mime.UnlockComponent("Anything for 30-day trial"); if (success != true) { MessageBox.Show("Failed to unlock MIME component"); return; } success = mime.LoadMimeFile("test.mht"); if (success != true) { MessageBox.Show(mime.LastErrorText); return; } // Is this a multipart/related? If so, find the HTML part, // which should be the 1st sub-part. if (mime.IsMultipartRelated() == true) { // Find the HTML part. Chilkat.Mime mimePart = null; int n; int i; n = mime.NumParts; for (i = 0; i <= n - 1; i++) { mimePart = mime.GetPart(i); if (mimePart.IsHtml() == true) { break; } } if (!(mimePart == null )) { // Remove these header fields: mimePart.SetHeaderField("Content-Disposition",""); mimePart.SetHeaderField("Content-ID",""); // Remove the "name" attribute from the Content-Type header: mimePart.Name = ""; } } email.SetFromMimeText(mime.GetMime()); email.Subject = "This is a test"; email.From = "Chilkat Support <support@chilkatsoft.com>"; email.AddTo("Chilkat Admin","admin@chilkatsoft.com"); success = mailman.SendEmail(email); if (success != true) { MessageBox.Show(mailman.LastErrorText); } else { MessageBox.Show("Mail Sent!"); } |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2008 Chilkat Software, Inc. All Rights Reserved.