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

Dll Smtp


rodfraga

Pergunta

Para enviar emails pelo VB eu to usando uma dll que o Pigmeu me passou.

Deu certo, não há erro de sintaxe. Mas as mensagens de resultado sempre vêm como "O e-mail não foi enviado com sucesso". não tenho ideia do por que, afinal, eu fiz como o macoratti mandou. alguém tem alguma ideia? vou postar o codigo...

Private Sub cmdenviar_Click()
Dim sucesso As Boolean '
Dim mensagem As String
Dim mailer As SMTPsvg.mailer

Set mailer = CreateObject("SMTPsvg.Mailer")

mailer.RemoteHost = "smtp.mail.yahoo.com.br"

mailer.FromName = txtremetente.Text
mailer.FromAddress = txtemailremetente.Text 
mailer.AddRecipient txtdestino.Text, txtemaildestino.Text 
mailer.Subject = txtassunto.Text 
mailer.BodyText = txtexto.Text
sucesso = mailer.SendMail
If sucesso Then
   mensagem = "O E-MAIL ENVIADO COM SUCESSO!"
Else
   mensagem = "O E-MAIL NÃO FOI ENVIADO COM SUCESSO!"
End If
End Sub

Tirei os comentarios e um codigo de msgbox no final que achei desnecessario...Se alguém puder ajudar, obrigado!

Abraços

Link para o comentário
Compartilhar em outros sites

20 respostass a esta questão

Posts Recomendados

  • 0

Ai galera, se alguém conhecer essa dll, AspMail eu acho. Tem o nome de SMTP.svg não tenho certeza. Se alguém conhecer responda aqui por favor, tou precisando saber porque retorna a mensagem "O E-MAIL não FOI ENVIADO COM SUCESSO"...POr favor respondam!

E Pigmeu, tu q conhece, se puder, dá uma resposta ai por favor! rolleyes.gif

Obrigado

Abraços

Rodrigo

Link para o comentário
Compartilhar em outros sites

  • 0

Eu usei o código abaixo e funcionou:

Atenção especial ao servidor de SMTP.Usando um servidor pela internet eu não tentei ainda.

Dim Mail As MailSender

Set Mail = New MailSender

'Se tudo deu certo, quando teclar o ponto apos digitar Mail , devera aparecer 'todos os métodos disponíveis.

Você precisa especificar o endereço e opcionalmente o numero da porta:

Mail.Host = "smtp.mycompany.com"

Mail.Port = 25 ' Opcional. Porta e 25 por default

'E possível especificar mais de um servidor SMTP . Separe por ponto e virgula:

Mail.Host = "smtp.mycompany.com;smtp2.mycompany.com;host.someothercompany.com"

'Neste caso, o AspEmail tenta se conectar com o primeiro servidor, se não for 'possível , tenta se comunicar com o segundo, e assim por diante.

'Se não for possível se conectar com nenhum servidor , será gerado um erro de 'exceção.

'Digite o endereço do remetente:

Mail.From = "fulano@mycompany.com"

'Você pode especificar um nome para o remetente (opcional):

Mail.FromName = "Sales Department" ' Optional

Mail.AddAddress "jsmith@company1.com", "John Smith"

Mail.AddCC "bjohnson@company2.com" ' Nome é opcional

Mail.Subject = "Sales Receipt"

Mail.Body = "Dear John:" & VbCrLf & "Thank you for your business. Here is your receipt."

ou

Mail.Subject = "Sales Receipt"

Mail.Body = "<HTML><BODY BGCOLOR=#0000FF>Dear John:....</BODY></HTML>"

Mail.IsHTML = True

'Para enviar um anexo junto com a mensagem , use o método de AddAttachment.

'Use este comando quantas vezes forem necessárias para inserir todos os anexos.

Mail.AddAttachment "c:\dir\receipt.doc"

On Error Resume Next

Mail.Send

If Err.Number <> 0 Then

MsgBox "Ocorreu um erro:" & Err.Description

Else

MsgBox "Sucesso"

End If

Link para o comentário
Compartilhar em outros sites

  • 0

Tipo.. sobre essa autenticacao eu tb não cheguei a usar(voce deve ter visto no codigo q eu lhe passei pelo ICQ)...

Bom.. pelo q eu dei uma procurada na net achei isso:

How do I set the username and password to send mail? Standard SMTP does not use a uid/pwd so it isn't needed unless your SMTP requires user authentication. AspMail will support user authentication in a future version but not currently do so.

Traduzindo:

O ASPMail até a sua ultima versão não tem suporte a Autenticação SMTP sad.gif

é isso ae

Link para o comentário
Compartilhar em outros sites

  • 0

Valeu Pigmeu...Mas então...Eu sou iniciante e queria saber...Se voce informou seu email no inicio do form, na caixa txtemailremetente, por que voce tem que declarar um host smtp? pra falar a verdade ainda não entendi muito bem, afinal se meu email é do yahoo, seria certo usar o smtp do yahoo e não de outro servidor certo? não entendi. Eu poderia usar o smtp de um host que não pede autorização? Se posso, voces poderiam me passar o endereço desse host?

Abraços

Rodrigo

Link para o comentário
Compartilhar em outros sites

  • 0

voce tem q saber tb se o seu e-mail tem suporte a SMTP.. apos isso você precisa ver se ele pede autorizacao.

voce pode colocar no FROM lalalall@1234.pop.troço.com logando no SMTP da UOL q é normal...

Bom o jeito q disse q eu usei.. foi idem a que voce postou e idem ao do site do macoratti(onde eu me baseei pra fazer)

Link para o comentário
Compartilhar em outros sites

  • 0

kara, pra você saber exatamente que erro é, faça isso aqui pra teste:

If sucesso Then

mensagem = "O E-MAIL ENVIADO COM SUCESSO!"

Else

mensagem = "O E-MAIL NÃO FOI ENVIADO COM SUCESSO!"

mensagem = mensagem & Chr(13) & Chr(13)

mensagem = mensagem & "Número do Erro: "& Err.Number

mensagem = mensagem & Chr(13)

mensagem = mensagem & "Descrição do Erro: "& Err.Description

End If

tenta ai, to achando que o erro é que o SMTP não é válido!!!

Link para o comentário
Compartilhar em outros sites

  • 0
kara, pra você saber exatamente que erro é, faça isso aqui pra teste:

If sucesso Then

mensagem = "O E-MAIL ENVIADO COM SUCESSO!"

Else

mensagem = "O E-MAIL NÃO FOI ENVIADO COM SUCESSO!"

mensagem = mensagem & Chr(13) & Chr(13)

mensagem = mensagem & "Número do Erro: "& Err.Number

mensagem = mensagem & Chr(13)

mensagem = mensagem & "Descrição do Erro: "& Err.Description

End If

tenta ai, to achando que o erro é que o SMTP não é válido!!!

tb achei isso.. mas acho q o yahoo ta com suporte a SMTP não esta?

Link para o comentário
Compartilhar em outros sites

  • 0

Galera, a dll tem suporte a um atributo UserName e outro a Password...então eu fiz assim: botei o seguinte código:

Private Sub cmdenviar_Click()
Dim sucesso As Boolean '
Dim mensagem As String
Dim mailer As SMTPsvg.mailer

Set mailer = CreateObject("SMTPsvg.Mailer")
mailer.UserName = txtuser.Text
mailer.Password = txtpass.Text
mailer.RemoteHost = "smtp.yahoo.com.br"
mailer.FromName = txtremetente.Text
mailer.FromAddress = txtemailremetente.Text
mailer.AddRecipient txtdestino.Text, txtemaildestino.Text
mailer.Subject = txtassunto.Text
mailer.BodyText = txtTexto.Text
sucesso = mailer.SendMail
mailer.SendMail
If sucesso Then
   mensagem = "O E-MAIL ENVIADO COM SUCESSO!"
Else
   mensagem = "O E-MAIL NÃO FOI ENVIADO COM SUCESSO!"
End If
End Sub

E executei o programa, dando todas as informações corretas, só que quando clico em enviar, ele não manda, fica parado...Meu Deus, cada hora um problema...alguém tem ideia do que aconteceu?

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0
Galera, a dll tem suporte a um atributo UserName e outro a Password...então eu fiz assim: botei o seguinte código:

Private Sub cmdenviar_Click()
Dim sucesso As Boolean '
Dim mensagem As String
Dim mailer As SMTPsvg.mailer

Set mailer = CreateObject("SMTPsvg.Mailer")
mailer.UserName = txtuser.Text
mailer.Password = txtpass.Text
mailer.RemoteHost = "smtp.yahoo.com.br"
mailer.FromName = txtremetente.Text
mailer.FromAddress = txtemailremetente.Text
mailer.AddRecipient txtdestino.Text, txtemaildestino.Text
mailer.Subject = txtassunto.Text
mailer.BodyText = txtTexto.Text
sucesso = mailer.SendMail
mailer.SendMail
If sucesso Then
   mensagem = "O E-MAIL ENVIADO COM SUCESSO!"
Else
   mensagem = "O E-MAIL NÃO FOI ENVIADO COM SUCESSO!"
End If
End Sub

E executei o programa, dando todas as informações corretas, só que quando clico em enviar, ele não manda, fica parado...Meu Deus, cada hora um problema...alguém tem ideia do que aconteceu?

Abraços

Onde voce achou a DLL com suporte a configuração de smtp? me passe depois para mim ver... pois como postei acima é o q tava falando no Site do ASPMAIL...

Link para o comentário
Compartilhar em outros sites

  • 0

Cara, não sei se estou falando um absurdo, mas Pigmeu, olha só:

Sabe quando voce digita algo como, "label1." e aparece uma serie de propriedades? então... quando eu digitei "mailer." apareceram uma serie de propriedades inclusive Password, UserName e SMTPlog... Fora propriedades para ataxar arquivos e tal. Penso que elas sejam para autenticar um usuario a uma sistema SMTP certo? Eu li o que voce escreveu antes, mas foi isso que aconteceu comigo...

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Humm entendo..

mas você chegou a criar a variavel então "DIM mailer as SMTPsvg.mailer" não é??

quando usei eu não criei.. apenas setei o meu eviaemail

Bom... vou ver se posso fazer alguma coisa.. qualquer coisa posto aki....

Link para o comentário
Compartilhar em outros sites

  • 0

Saquei, mas eu copiei o codigo lá do macoratti e apenas tirei os comentarios e coisas que eu julguei que não fossem atrapalhar, ele declara a variavel mailer se não me engano...

Valeu mesmo! Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

ô droga de programinha. Eu tentei com o smtp que voce passou, mas agora o erro ta em que, quando eu clico em enviar, ele não faz nada...

Private Sub cmd_Click()
Dim sucesso As Boolean '
Dim mensagem As String
Dim mailer As SMTPsvg.mailer

Set mailer = CreateObject("SMTPsvg.Mailer")
mailer.RemoteHost = "smtp.onda.com.br"
mailer.FromName = txtremetente.Text
mailer.FromAddress = txtemailremetente.Text
mailer.AddRecipient txtdestino.Text, txtemaildestino.Text
mailer.Subject = txtassunto.Text
mailer.BodyText = txtTexto.Text
sucesso = mailer.SendMail
If sucesso Then
   mensagem = "O E-MAIL ENVIADO COM SUCESSO!"
Else
   mensagem = "O E-MAIL NÃO FOI ENVIADO COM SUCESSO!"
End If
End Sub

POr favor, me ajudem sad.gif

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,2k
    • Posts
      652k
×
×
  • Criar Novo...