Ola Pessoal,
Tivemos um requisito aqui em uma aplicação pontual, na empresa. Precisavamos ler e trabalhar no geral com as mensagens em um servidor Exchange, mas tudo isso através de uma aplicação ASP.NET com C#.
Depois de rápidas discussões decidimos por uma solução bem simples, usar a dll Microsoft.Office.Interop.Outlook . Esta dll faz com que possamos usar os recursos nativos do outlook, ou seja, se seu outlook estiver com sua conta exchange configurada conseguimos usa-lo para efetuar as tarefas como ler um email por exemplo.
Abaixo vou descrever como ficou esta solução rápida:
- Com nossa aplicação ASP.NET criado adicionei a referencia da DLL Microsoft.Office.Interop.Outlook ( a versão depende muito da instalação do Office em sua máquina, procure usar a versão que você ira ter no servidor, afinal sem usaremos o proprio outlook para executar as tarefas)
- Agora em nossa página podemos usar o seguinte código como exemplo para ler os email da caixa de entrada configurada no outlook local.
//Criando uma instancia do outlook Application outlook = new ApplicationClass(); //Agora vamos nos autenticar NameSpace ns = outlook.GetNamespace("Mapi"); object _missing = Type.Missing; ns.Logon(_missing, _missing, false, true); //Apenas como exemplo vamos selecionar a Inbox para ler seus e-mails MAPIFolder inbox = ns.GetDefaultFolder(OlDefaultFolders.olFolderInbox); //Exemplo de recurso da DLL, abaixo vemos com identificar quantos emails não lidos ainda int unread = inbox.UnReadItemCount; //Agora podemos fazer um loop e ler todos os emails da pasta selecionada foreach (MailItem mail in inbox.Items) { string body = mail.Body; string subject = mail.Subject; }
Pessoal este é um pequeno exemplo das inúmeras funcionalidades que podemos usar usando o Interop do Office.
[]s
Ola Adriano
Cara achei legal esse post, vc sabe como posso fazer a mesma coisa só que eu quero fazer isso pra receber digamos do gmail
vlws