ENVIAR EMAIL COM OUTLOOK QUALQUER VERSÃO

MAXCIM 14/08/2016 11:44:05
#465815
olá amigos.

já envio email através do outlook pelo VB e tbm tenho rotinas de envio direto pelo sistema.

porem me surgiu um problema, diversas versões do outlook no cliente, e meu sistema só funciona com o office 2013 pra cá.

o cliente faz questão que os e-mails sejam enviados pelo outlook. o office dele é o 2010.

como faço para montar um rotina de integração com o outlook independente da versão do office?



JCM0867 14/08/2016 13:07:35
#465816
Eu desenvolvi essa solução, vê se te ajuda. Rode com o office 2010 instalado.
http://www.vbmania.com.br/index.php?modulo=detalhe&id=9477




[txt-color=#0000f0]Precisando de um Sistema de Gestão Educacional?[/txt-color]
Desenvolvido em VB.NET + SQL Server + Crystal Reports
Conheça nossa Solução: www.cjsystem.com.br
MAXCIM 14/08/2016 15:33:10
#465818
Obrigado JCM, pela atenção.

seu projeto faz o envio usando System.Net.Mail, e to precisando de algo com integração com outlook.
MAXCIM 25/08/2016 10:14:16
#466170
amigos, ainda preciso de ajuda! cada cliente tem uma versão diferente de office, como fazer uma aplicação que rode em qualquer uma?
ALVAROVB2009 25/08/2016 13:02:26
#466177
Resposta escolhida
Simples não use o outlook, use o schema da microsoft

Da para enviar um email direto pelo sistema, é assim que resolvi os meus problemas
Daí eu gravo no banco quando que foi enviado o email e assim o cliente tem como consultar o envio
Más como tem gente que ainda prefere ter no outlook uma cópia do envio, então dessa forma , no envio do email eu mando com uma cópia

Eu uso assim
[ô]Variáveis para o envio de email
Dim Schema
[ô]cria o objeto para a configuração do envio de e-mail
Dim ConfigEmail As CDO.Configuration
[ô]cria o objeto para o envio de e-mail
Dim EnviaEmail As CDO.Message

Schema = [Ô]http://schemas.microsoft.com/cdo/configuration/[Ô]
Set ConfigEmail = New CDO.Configuration
ConfigEmail.Fields(Schema & [Ô]smtpserver[Ô]) = LerParametro([Ô]ServidorSaidaSMTP[Ô])
ConfigEmail.Fields(Schema & [Ô]sendusing[Ô]) = 2
ConfigEmail.Fields(Schema & [Ô]smtpserverport[Ô]) = LerParametro([Ô]PortaSmtp[Ô])
ConfigEmail.Fields(Schema & [Ô]smtpconnectiontimeout[Ô]) = 10
If UCase(LerParametro([Ô]UsarCriptografia[Ô])) = [Ô]NENHUMA[Ô] Then
ConfigEmail.Fields(Schema & [Ô]smtpusessl[Ô]) = False
Else
ConfigEmail.Fields(Schema & [Ô]smtpusessl[Ô]) = True
End If
ConfigEmail.Fields(Schema & [Ô]smtpauthenticate[Ô]) = LerParametro([Ô]RequerAutenticacao[Ô])
ConfigEmail.Fields(Schema & [Ô]sendusername[Ô]) = LerParametro([Ô]UsuarioAutenticacao[Ô])
ConfigEmail.Fields(Schema & [Ô]sendpassword[Ô]) = LerParametro([Ô]SenhaEmail[Ô])
ConfigEmail.Fields.Update

Set EnviaEmail = New CDO.Message
Set EnviaEmail.Configuration = ConfigEmail

EnviaEmail.from = LerParametro([Ô]UsuarioAutenticacao[Ô])
EnviaEmail.To = EmailDestino

[ô]Assunto da mensagem
EnviaEmail.Subject = TituloEmail

[ô]Anexar um arquivo
EnviaEmail.AddAttachment App.Path & [Ô]\Guia [Ô] & TipoGuiaEmitida & [Ô].pdf[Ô] [ô]O nome do arquivo
EnviaEmail.Send

Depois que comecei a usar dessa forma, nunca mais tive problema, não só em máquina desktop, más envio também por site e em ASP ainda
Uso da mesma forma

Caso queira ver outras opções de envio, esse é o Link

Qqer coisa da um toque ai, somos vizinhos rsrsrs
NILSONTRES 25/08/2016 17:19:04
#466188
Eu já digo logo para o cliente, sem Outlook.
Tópico encerrado , respostas não são mais permitidas