INTRODUCCIÓN
En este artículo se describe cómo usar la Biblioteca de objetos de Microsoft Outlook 2002 o la Biblioteca de objetos de Microsoft Office Outlook 2003 para enviar un mensaje con formato HTML mediante Microsoft Visual C#.
Más información
Para usar la biblioteca de objetos Outlook 2002 o la biblioteca de objetos de Outlook 2003 para enviar un mensaje con formato HTML mediante Microsoft Visual C#, siga estos pasos:
-
En Microsoft Visual Studio .NET o en Microsoft Visual Studio 2005, cree un nuevo proyecto de aplicación de consola:
-
En el menú Archivo, seleccione Nuevo y, a continuación, haga clic en Project.
-
En Project, haga clic en Visual C# Proyectos.
Nota En Microsoft Visual C# 2005, haga clic en Visual C# en Project tipos. -
En Plantillas, haga clic en Aplicación de consola.
-
Haga clic en Aceptar. De forma predeterminada, se crea un archivo denominado Class1.cs.
Nota En Microsoft Visual C# 2005, Program.cs se crea de forma predeterminada.
-
-
Agregue una referencia a la biblioteca Outlook objetos de 2002 o a Outlook de objetos de 2003. Para ello, siga estos pasos:
-
En el menú Proyecto, haga clic en Agregar referencia.
-
Haga clic en la pestaña COM .
-
En la pestaña COM, haga clic en Biblioteca de objetos de Microsoft Outlook 11.0 si usa Outlook 2003 o haga clic en Biblioteca de objetos de Microsoft Outlook 10.0 si usa Outlook 2002.
-
Haga clic en Seleccionar.
Nota En Visual C# 2005, no tiene que hacer clic en Seleccionar. -
En el cuadro de diálogo Agregar referencias , haga clic en Aceptar.
Nota Si recibe un mensaje para generar contenedores para las bibliotecas que seleccionó, haga clic en Sí.
-
-
En la ventana Código de Clase1.cs, reemplace todo el código existente por el siguiente código:
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;
}
}
} -
En este código, realice los cambios necesarios donde vea los comentarios "TO DO".
-
Presione F5 para crear y, a continuación, ejecute el programa.
-
Compruebe que el mensaje de correo electrónico se ha enviado y se ha recibido.
Referencias
Para obtener más información, visite el siguiente sitio web de Microsoft Developer Network (MSDN):
http://msdn2.microsoft.com/en-us/library/aa188489(office.10).aspxPara obtener más información sobre las características de seguridad de correo electrónico de Outlook 2002 y sobre cómo estas características pueden afectar a las soluciones personalizadas, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
290500 Descripción de las características de seguridad de correo electrónico relacionadas con el desarrollador en Outlook 2002