INTRODUÇÃO
Este artigo descreve como usar a Biblioteca de Objetos do Microsoft Outlook 2002 ou a Biblioteca de Objetos Microsoft Office Outlook 2003 para enviar uma mensagem formatada em HTML usando o Microsoft Visual C#.
Informações adicionais
Para usar a Biblioteca de Objetos Outlook 2002 ou a Biblioteca de Objetos Outlook 2003 para enviar uma mensagem formatada em HTML usando o Microsoft Visual C#, siga estas etapas:
-
No Microsoft Visual Studio .NET ou no Microsoft Visual Studio 2005, crie um novo projeto de Aplicativo de Console:
-
No menu Arquivo, aponte para Novo e clique em Project.
-
Em Project Tipos, clique em Visual C# Projects.
Observação No Microsoft Visual C# 2005, clique em Visual C# em Project Tipos. -
Em Modelos, clique em Aplicativo de Console.
-
Clique em OK. Por padrão, um arquivo chamado Class1.cs é criado.
Observação No Microsoft Visual C# 2005, Program.cs é criado por padrão.
-
-
Adicione uma referência à biblioteca de objetos Outlook 2002 ou à biblioteca de objetos Outlook 2003. Para fazer isso, siga estas etapas:
-
No menu Project, clique em Add Reference.
-
Clique na guia COM .
-
Na guia COM, clique em Biblioteca de Objetos do Microsoft Outlook 11.0 se estiver usando o Outlook 2003 ou clique em Biblioteca de Objetos do Microsoft Outlook 10.0 se estiver usando o Outlook 2002.
-
Clique em Selecionar.
Observação No Visual C# 2005, você não precisa clicar em Selecionar. -
Na caixa de diálogo Adicionar Referências , clique em OK.
Observação Se você receber uma mensagem para gerar invólucros para as bibliotecas selecionadas, clique em Sim.
-
-
Na janela de código Class1.cs, substitua todo o código existente pelo seguinte 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;
}
}
} -
Neste código, faça quaisquer alterações necessárias em que você veja os comentários "TO DO".
-
Pressione F5 para criar e executar o programa.
-
Verifique se a mensagem de email foi enviada e recebida.
Referências
Para obter mais informações, visite o seguinte site do Microsoft Developer Network (MSDN) :
http://msdn2.microsoft.com/en-us/library/aa188489(office.10).aspxPara obter mais informações sobre os recursos de segurança de email do Outlook 2002 e sobre como esses recursos podem afetar soluções personalizadas, clique no seguinte número de artigo para exibir o artigo na Base de Dados de Conhecimento da Microsoft:
290500 Descrição dos recursos de segurança de email relacionados ao desenvolvedor no Outlook 2002