INTRODUÇÃO
Este artigo descreve como utilizar a Biblioteca de Objetos do Microsoft Outlook 2002 ou a Biblioteca de Objetos do Microsoft Office Outlook 2003 para enviar uma mensagem com formato HTML através do Microsoft Visual C#.
Mais Informações
Para utilizar a Biblioteca de Objetos do Outlook 2002 ou a Biblioteca de Objetos do Outlook 2003 para enviar uma mensagem com formato HTML através do Microsoft Visual C#, siga estes passos:
-
No Microsoft Visual Studio .NET ou no Microsoft Visual Studio 2005, crie um novo projeto de Aplicação de Consola:
-
No menu Ficheiro, aponte para Novo e, em seguida, clique em Project.
-
Em Project, clique em Projetos Visuais C#.
Nota No Microsoft Visual C# 2005, clique em Visual C# em Project Tipos. -
Em Modelos, clique em Aplicação de Consola.
-
Clique em OK. Por predefinição, é criado um ficheiro com o nome Class1.cs.
Nota No Microsoft Visual C# 2005, a opção Program.cs é criada por predefinição.
-
-
Adicione uma referência à Biblioteca de Objetos do Outlook 2002 ou à Biblioteca de Objetos do Outlook 2003. Para tal, siga estes passos:
-
No menu Project, clique em Adicionar Referência.
-
Clique no separador COM .
-
No separador COM, clique em Biblioteca de Objetos do Microsoft Outlook 11.0 se estiver a utilizar o Outlook 2003 ou clique em Biblioteca de Objetos do Microsoft Outlook 10.0 se estiver a utilizar o Outlook 2002.
-
Clique em Selecionar.
Nota No Visual C# 2005, não tem de clicar em Selecionar. -
Na caixa de diálogo Adicionar Referências , clique em OK.
Nota Se receber uma mensagem para gerar embrulhos para as bibliotecas que selecionou, clique em Sim.
-
-
Na janela 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 as alterações necessárias quando vir os comentários do "TO DO".
-
Prima F5 para criar e, em seguida, execute o programa.
-
Verifique se a mensagem de e-mail foi enviada e que foi 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 as funcionalidades de segurança de e-mail do Outlook 2002 e sobre como essas funcionalidades podem afetar soluções personalizadas, clique no número do artigo seguinte para ver o artigo na Base de Dados de Conhecimento Microsoft:
290500 Descrição das funcionalidades de segurança de e-mail relacionadas com o programa Outlook 2002