Ir para conteúdo
Fórum Script Brasil
  • 0

Topico Exclusivo - Componentes De E-mail - 2 !


dark0

Pergunta

Olá pessoal, blza?

Bem, como eu havia postado no tópico anterior sobre CDONTS, vide:

http://scriptbrasil.com.br/forum/index.php?showtopic=34563

Estou seguindo com a série de Componentes de E-mails.

Pretendo deixar uma boa referência sobre tais componentes aqui no fórum. Para o acaso, de futuras dúvidas, já termos as Soluções Postadas!

Usando o ASPMAIL

O ASPMAIL é um componente muito conhecido para enviar email , voce pode fazer o download de cópia funcional no site http://www.serverobjects.com

A funcionalidade do componente esta na dll - smtpsvg.dll - após fazer o download você deve registrar o arquivo no seu sistema. Pode fazer isto usando o arquivo - regsvr32.exe - que vem junto com o pacote. Ex: regsvr32 smtpsvg.dll

Junto com o pacote de você encontra a documentação e exemplos de como usar o componente.

texto tirado de: http://www.macoratti.net/vb_email.htm

Documentação Oficial:

http://www.serverobjects.com/comp/Aspmail3.htm

Site do 'fabricante'

http://www.serverobjects.com/

Onde baixar:

http://www.serverobjects.com/products.htm

Exemplo de Código:

<%

if request("botao") = "enviar" then

Set Mailer = Server.CreateObject("SMTPsvg.Mailer")

Mailer.FromName = "Seu_Nome"

Mailer.FromAddress= "seu_nome@seudominio.com.br"

Mailer.RemoteHost = "smtp.seudominio.com(.br)"

Mailer.AddRecipient "teste", request.form("para")

Mailer.Subject = request.form("assunto")

Mailer.BodyText = request.form("mensagem")

if Mailer.SendMail then

Response.Write "E-MAIL ENVIADO COM SUCESSO!"

else

Response.Write mailer.response

end if

response.end

end if

%>

<html>

<head>

<title>Digiweb - Exemplo de AspMail</title>

<head>

<body>

<form method="POST" action="aspmail.asp">

<p>AspMail - Envio de E-mail através de página Web</p>

<table border="0" width="100%">

<tr>

<td width="14%">Para :</td>

<td width="86%"><input type="text" name="para" size="20"></td>

</tr>

<tr>

<td width="14%">Assunto :</td>

<td width="86%"><input type="text" name="assunto" size="20"></td>

</tr>

<tr>

<td width="14%">Mensagem :</td>

<td width="86%"><textarea rows="2" name="mensagem" cols="20"></textarea></td>

</tr>

<tr>

<td width="14%"></td>

<td width="86%"><input type="submit" value="enviar" name="botao"></td>

</tr>

</table>

</form>

</body>

</html>

Copie os códigos do exemplo e crie uma página ASP com o nome de aspmail.asp.

Para o funcionamento correto do script, altere apenas os campos abaixo:

- Em Mailer.FromName = "Seu_Nome", substitua a parte "Seu_Nome" pelo nome do Remetente do E-mail (seu nome).

- Na linha Mailer.FromAddress = "seu_nome@seudominio.com.br" substitua o endereço de e-mail "seu_nome@seudominio.com.br" pelo endereço de e-mail remetente (seu e-mail).

- Na linha Mailer.RemoteHost = "smtp.seudominio.com.br" substitua a parte "seudominio.com.br" pelo endereço de seu web site.

Texto, e codigo tirado de:

http://www.digiweb.com.br/suporte/windows/aspmail/index.asp

Bem, à principio é isso aí!

Vamos adicionar mais conteúdo à este tópico!

Abraços,

Dark0!

Link para o comentário
Compartilhar em outros sites

18 respostass a esta questão

Posts Recomendados

  • 0

Fala galera...

Não sei se está muito dentro do assunto....

Estou desenvolvendo um daqueles formulários de envio de e-mail, só que é em ASP.NET.

Não sei o porque, mas não estou conseguindo enviar de maneira nenhuma....

já tentei os três seguintes códigos...

Tentativa 1


        Try
        Dim MandaEmailSimples As New MailMessage
        Dim origem, destino, assunto, mensagem As String
        origem = txtEmail.Text.ToLower.Trim()
        destino = "aubry@amplaconsultoria.com.br"
        assunto = txtAssunto.Text.Trim()
        mensagem = txtMensagem.Text.Trim()
        SmtpMail.Send(origem, destino, assunto, mensagem)
        Catch ex As Exception
            Response.Write(ex)
        End Try
Tentativa 2
Dim msg As New MailMessage

        msg.From = "aubrym@igmail.com.br"
        msg.To = "aubry@amplaconsultoria.com.br"
        msg.Subject = "Teste e-mail"
        msg.Body = "tentativa 2"
        Web.Mail.SmtpMail.SmtpServer = "smtp.amplaconsultoria.com.br"
        Try
            Web.Mail.SmtpMail.Send(msg)
            Response.Redirect("sucesso.htm")
        Catch erro As Exception
            Response.Write("Server error: " & erro.ToString())
        End Try
Tentativa 3
Dim email As New MailMessage
        With email
        .From = "0"
        .To = "0"
        .Subject = "0"
        .Body = "0"
        End With
        SmtpMail.SmtpServer = "M17"
        SmtpMail.Send(email)

Na tentativa 1 e 3 ele se comporta como se estivesse tudo correto e o e-nail tivesse sido devidamente enviado, mas em nenhum dos casos o e-mail chega.

Mas na tentativa 2, ele dá um que eu não sei o que é....

Server error: System.Web.HttpException: Não foi possível acessar o objeto 'CDO.Message'. ---> System.Reflection.TargetInvocationException: Uma exceção foi acionada pelo destino de uma chamada. ---> System.Runtime.InteropServices.COMException (0x80040213): The transport failed to connect to the server. --- Fim do rastreamento de pilha de exceções internas --- at System.RuntimeType.InvokeDispMethod(String name, BindingFlags invokeAttr, Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[] namedParameters) at System.RuntimeType.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParameters) at System.Type.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args) at System.Web.Mail.LateBoundAccessHelper.CallMethod(Type type, Object obj, String methodName, Object[] args) at System.Web.Mail.LateBoundAccessHelper.CallMethod(Object obj, String methodName, Object[] args) --- Fim do rastreamento de pilha de exceções internas --- at System.Web.Mail.LateBoundAccessHelper.CallMethod(Object obj, String methodName, Object[] args) at System.Web.Mail.CdoSysHelper.Send(MailMessage message) at System.Web.Mail.SmtpMail.Send(MailMessage message) at siteampla.Contato.btnEnviar_Click(Object sender, EventArgs e) in C:\Inetpub\wwwroot\siteampla\contato.aspx.vb:line 62

Se alguém puder ajudar ficarei agradecido....

Link para o comentário
Compartilhar em outros sites

  • 0

ar_ctjd,

Eu respondi no tópico em que você criou com esta duvida.

Aqui, o tema seria ASPMAIL. Para ASP.NET, não sei te dizer muito bem, porque nunca programei nesta linguagem.

Link para o comentário
Compartilhar em outros sites

  • 0

poirot, em que windows você tentou instalar a dll?

Link para o comentário
Compartilhar em outros sites

  • 0

Olá alam.

Bom, não existe um Banco de Dados de E-mails que retornam.

Isso, porque o ASPMail apenas envia os e-mails. Ele não recebe e-mails. Então, ele não tem como saber quais e-mails retornaram.

Entendido?

O que você pode fazer, é criar uma rotina, onde você grava num banco de dados os e-mails que não foram enviados pelo AspMail.

Isso, você pode fazer tranquilamente. Basta fazer um IF no objeto que envia o e-mail. Se ele retornar TRUE, o e-mail foi enviado. Senão, deu erro.

if Mailer.SendMail then
Response.Write "E-MAIL ENVIADO COM SUCESSO!"
else
Response.Write mailer.response
end if

No lugar de Response.Write, você pode colocar algo, como um INSERT no banco de dados ...

Captou a idéia?

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0
Olá alam.

Bom, não existe um Banco de Dados de E-mails que retornam.

Isso, porque o ASPMail apenas envia os e-mails. Ele não recebe e-mails. Então, ele não tem como saber quais e-mails retornaram.

Entendido?

O que você pode fazer, é criar uma rotina, onde você grava num banco de dados os e-mails que não foram enviados pelo AspMail.

Isso, você pode fazer tranquilamente. Basta fazer um IF no objeto que envia o e-mail. Se ele retornar TRUE, o e-mail foi enviado. Senão, deu erro.

if Mailer.SendMail then
Response.Write "E-MAIL ENVIADO COM SUCESSO!"
else
Response.Write mailer.response
end if

No lugar de Response.Write, você pode colocar algo, como um INSERT no banco de dados ...

Captou a idéia?

Abraços

o que eu queria saber é se tem como contar os emails que retornam porque não existem!! Usuário inexistente!

Valeu

Link para o comentário
Compartilhar em outros sites

  • 0

você leu o que eu falei?

Bom, não existe um Banco de Dados de E-mails que retornam.

Isso, porque o ASPMail apenas envia os e-mails. Ele não recebe e-mails. Então, ele não tem como saber quais e-mails retornaram.

Entendido?

Eu falei que o ASPMAIL não tem como saber que e-mails retornaram .. pois ele não ai receber aquela mensagem de erro, dizendo que o e-mail não existe.

Link para o comentário
Compartilhar em outros sites

  • 0
você leu o que eu falei?
Bom, não existe um Banco de Dados de E-mails que retornam.

Isso, porque o ASPMail apenas envia os e-mails. Ele não recebe e-mails. Então, ele não tem como saber quais e-mails retornaram.

Entendido?

Eu falei que o ASPMAIL não tem como saber que e-mails retornaram .. pois ele não ai receber aquela mensagem de erro, dizendo que o e-mail não existe.

e com o CDONTS posso fazer isso?

Link para o comentário
Compartilhar em outros sites

  • 0

Brother ..

Creio eu, que todo e quaqluer componente de e-mail apenas envie e-mails.

Nenhum recebe e-mail.

Então, não tem como saber que e-mails voltaram..

Link para o comentário
Compartilhar em outros sites

  • 0

você pode definir a mensagem como sendo HTML, e colocar o comando HTML pra mostrar a imagem, apontando pro endereço da imagem na WEB!

Basicamente assim é o modo mais simples de se fazer!

Entendeu?

Link para o comentário
Compartilhar em outros sites

  • 0

aparentemente eu tava com essa ideia... mais tentei fazer e não deu certo........ aparecia so o quadrado mais a figura não.........

poe um exemplo ai...

eu tava tentando mandar um link em javascript que abrisse uma popup... ele não aceita isso?

Link para o comentário
Compartilhar em outros sites

  • 0
eu tava tentando mandar um link em javascript que abrisse uma popup... ele não aceita isso?

aparentemente deveria aceitar. Porém, só testando pra saber.

Mas, o componente deve ter suporte à envio com conteudo HTML. Senao não funciona ..

Link para o comentário
Compartilhar em outros sites

  • 0

não tem muito a ver com o assunto, mas achei legal:

Evite aborrecimento com Mail Delivery Subsystem em seu site

http://www.portaldaprogramacao.com/artigos2.asp?n=34

Link para o comentário
Compartilhar em outros sites

  • 0

cara, você baixou o componente de onde?

será que não deu problema no download?

pois, a principio, não deveria dar erro ..

vou ver se faço alguns testes aqui, pra ver se tem algum 'cabrito' pra fazer

Link para o comentário
Compartilhar em outros sites

  • 0

Bom, estou removendo o Destaque deste Tópico, visto que lancei o Proximo Componente.. JMAIL

Veja aqui:

http://scriptbrasil.com.br/forum/index.php?showtopic=40233

Abraços

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...