ВВЕДЕНИЕ
В этой статье описано, как с помощью объектной библиотеки Microsoft Outlook 2002 или библиотеки объектов Microsoft Office Outlook 2003 отправить сообщение в формате HTML с помощью Microsoft Visual C#.
Дополнительная информация
Чтобы использовать объектную библиотеку Outlook 2002 или библиотеку объектов Outlook 2003 для отправки сообщения в формате HTML с помощью Microsoft Visual C#, выполните следующие действия:
-
В Microsoft Visual Studio .NET или Microsoft Visual Studio 2005 создайте проект приложения консоли:
-
В меню Файл выберите пункты Новыеи Project.
-
В Project типы выберитеVisual C# Projects.
Примечание. В Microsoft Visual C# 2005 выберите Visual C# в Project типы. -
В области Шаблоны щелкните Приложение консоли.
-
Нажмите кнопку ОК. По умолчанию создается файл с именем Class1.cs.
Примечание. По умолчанию в Microsoft Visual C# 2005 создается program.cs.
-
-
Добавьте ссылку на библиотеку объектов Outlook 2002 или библиотеку Outlook 2003. Для этого выполните следующие действия:
-
В меню Project ссылку добавить ссылку.
-
Перейдите на вкладку COM.
-
На вкладке COM выберите библиотека объектов Microsoft Outlook 11.0, если вы используете Outlook 2003, или библиотеку объектов Microsoft Outlook 10.0, если вы используете Outlook 2002.
-
Нажмите кнопку Выбрать.
Примечание. В Visual C# 2005 не нужно нажимать кнопку Выбрать. -
В диалоговом окне Добавление ссылок нажмите кнопку ОК.
Примечание. Если вы получили сообщение о том, что для выбранных библиотек создается овертав, нажмите кнопку Да.
-
-
В окне кода Class1.cs замените существующий код следующим кодом:
using System;
using System.Reflection; // to use Missing.Value // TO DO: If you use the Microsoft Outlook 11.0 Object Library, uncomment the following line. // using Outlook = Microsoft.Office.Interop.Outlook; namespace SendHTMLMail { public class Class1 { public static int Main(string[] args) { try { // Create the Outlook application. Outlook.Application oApp = new Outlook.Application(); // Get the NameSpace and Logon information. Outlook.NameSpace oNS = oApp.GetNamespace("mapi"); // Log on by using a dialog box to choose the profile. oNS.Logon(Missing.Value, Missing.Value, true, true); // Alternate logon method that uses a specific profile. // TODO: If you use this logon method, // change the profile name to an appropriate value. //oNS.Logon("YourValidProfile", Missing.Value, false, true); // Create a new mail item. Outlook.MailItem oMsg = (Outlook.MailItem)oApp.CreateItem(Outlook.OlItemType.olMailItem); // Set the subject. oMsg.Subject = "Send Using OOM in C#"; // Set HTMLBody. String sHtml; sHtml = "<HTML>\n" + "<HEAD>\n" + "<TITLE>Sample GIF</TITLE>\n" + "</HEAD>\n" + "<BODY><P>\n" + "<h1><Font Color=Green>Inline graphics</Font></h1></P>\n" + "</BODY>\n" + "</HTML>"; oMsg.HTMLBody = sHtml; // Add a recipient. Outlook.Recipients oRecips = (Outlook.Recipients)oMsg.Recipients; // TODO: Change the recipient in the next line if necessary. Outlook.Recipient oRecip = (Outlook.Recipient)oRecips.Add("email address"); oRecip.Resolve(); // Send. oMsg.Send(); // Log off. oNS.Logoff(); // Clean up. oRecip = null; oRecips = null; oMsg = null; oNS = null; oApp = null; } // Simple error handling. catch (Exception e) { Console.WriteLine("{0} Exception caught.", e); } // Default return value. return 0; } } } -
В этом коде внести необходимые изменения в том месте, где вы видите прикомменты TO DO.
-
Нажмите F5, чтобы построить и запустить программу.
-
Убедитесь, что сообщение было отправлено и получено.
Ссылки
Дополнительные сведения см. на следующем веб-сайте Microsoft Developer Network (MSDN):
http://msdn2.microsoft.com/en-us/library/aa188489(office.10).aspxЧтобы узнать больше о Outlook 2002 и о том, как эти функции могут повлиять на пользовательские решения, щелкните номер следующей статьи, чтобы просмотреть статью в базе знаний Майкрософт:
290500 Описание функций безопасности электронной почты, связанных с разработчиками, в Outlook 2002