VBA Tips - Envie emails através do Hotmail e MSN Live - Send Email using Hotmail, MSN Live


Neste exemplo utilizaremos o Hotmail ou o MSN Live. Pode ser que prefiramos enviar os nossos relatórios através de uma conta externa ao nosso email corporativo para não sobrecarregar o servidor. Assim, utilizamos uma conta externa para isso.


O endereço do servidor SMTP do Hotmail / MSN  é "smtp.live.com". Ele requer conexão TSL para fazer a autenticação do usuário, e devemos usar o endereço do email Live como o nome do usuário para autenticação ESMTP. Por exemplo: seu e-mail é "liveid@hotmail.com", e em seguida o nome do usuário será "myid@hotmail.com".



Secure Socket Layer - SSL



É um padrão global em tecnologia de segurança desenvolvida pela Netscape em 1994. Ele cria um canal criptografado entre um servidor web e um navegador (browser) para garantir que todos os dados transmitidos sejam sigilosos e seguros. Milhões de consumidores reconhecem o "cadeado dourado" que aparece nos navegadores quando estão acessando um website seguro. 





Quando escolher ativar o SSL no seu servidor web você terá que responder algumas questões sobre a identidade do seu site (ex. a URL) e da sua empresa (ex. a Razão Social e o endereço). Seu servidor web então criará duas chaves criptográficas - a Chave Privada (Private Key) e a Chave Pública (Public Key). Sua Chave Privada não possui esse nome à toa - ela deve ser mantida privada e segura. Já a Chave Pública não necessita ser secreta e deve ser colocada na CSR (Certificate Signing Request) - um arquivo de dados contendo os detalhes do site e da empresa. Você deverá enviar esta CSR através do formulário de solicitação em nosso site, seus dados serão validados e se estiverem corretos seu certificado digital será emitido.





Seu servidor web irá associar o certificado emitido com a sua Chave Privada. Seu servidor irá estebelecer um link criptografado entre seu website e o navegador do seu consumidor.



Transport Layer Security - TLS



É um protocolo criptográfico cuja função é conferir segurança para a comunicação na Internet para serviços como email (SMTP), navegação por páginas (HTTP) e outros tipos de transferência de dados.




Simple Mail Transfer Protocol - SMTP  




É protocolo que transfere emails, é instalado como parte dos serviços de email junto o serviço POP3. O SMTP controla como o email é transportado e entregue através da Internet ao servidor de destino. O serviço SMTP envia e recebe emails entre os servidores, ao passo que o serviço POP3 recupera o email do servidor de email para o computador do usuário.


Extended Simple Mail Transfer Protocol - ESMTP  


ESMTP é uma definição de extensões de protocolo para o padrão Simple Mail Transfer Protocol. O formato da extensão foi definido na RFC 1869 em 1995. A RFC 1869 estabeleceu uma estrutura para as atuais e futuras extensões, para produzir um meio gerenciável e consistente pelo qual os clientes e servidores SMTP possam ser identificados e servidores SMTP possam indicar extensões suportadas para clientes conectados.




O código a seguir demonstrará como enviar e-mail usando o servidor SMTP do Hotmail / MSN Live.



Para tornar o seu projeto funcional faça o download e instale o
EASendMail em sua máquina.


Não deixe de adicionar a referência ao controle ActiveX de SMTP do objeto EASendMail no seu projeto. 


Inline image 1

Lembre-se, antes de executá-lo corretamente, por favor, mude o servidor SMTPusuáriosenharemetente, e destinatário conforme a conta a ser utilizada.






' The following example codes demonstrate sending email message using Hotmail/MSN Live SMTP Server
' To get full sample projects, please download and install EASendMail on your machine.
' To run it correctly, please change SMTP server, user, password, sender, recipient value to yours


Private Sub btnSendMail_Click() 

    Dim oSmtp As New EASendMailObjLib.Mail 
    Let oSmtp.LicenseCode = "TryIt" 

    ' Set your Hotmail email address
    Let oSmtp.FromAddr = "liveid@hotmail.com

    ' Add recipient email address
    oSmtp.AddRecipientEx "support@emailarchitect.net", 0 

    ' Set email subject
    Let oSmtp.Subject = "Teste de email a partir da conta do Hotmail." 

    ' Set email body
    Let oSmtp.BodyText = "Teste de email com VBA a partir da conta do Hotmail." 

    ' Hotmail SMTP server address
    Let oSmtp.ServerAddr = "smtp.live.com

    ' Hotmail user authentication should use your
    ' Hotmail email address as the user name.
    Let oSmtp.UserName = "liveid@hotmail.com
    Let oSmtp.Password = "<Digite aqui a sua senha>" 

    ' detect SSL/TLS connection automatically
    oSmtp.SSL_init 

    MsgBox "Início do envio de emails." 

    If oSmtp.SendMail() = 0 Then 
        MsgBox "Os emails foram enviados com sucesso!" 
    Else 
        MsgBox "Falha ao enviar email - Erro nº: " & oSmtp.GetLastErrDescription() 
    End If 

End Sub 



Tags: VBA, MSN, Hotmail, email, e-mail, SMTP, SSL, TLS, ESMTP, HTTP, CSR, RFC 1869, 

Nenhum comentário:

Postar um comentário

diHITT - Notícias