ERRO NO VBSENDMAIL

FILIPEBSANTOS 29/08/2010 23:46:15
#351671
Pessoal, andei pesquisando no Google e como não achei resposta para minha pergunta venho até vocês!

é o seguinte, minha aplicação tem que enviar um e-mail (apenas texto) e como eu queria que fosse direto do VB to usando a DLL do vbSendMail. Mas tá acontecendo algo muito intrigante!!!

Fiz o code todo certinho, ai quando eu cliquo em [ô]Enviar[ô] ai ele começa... Conecta no servidor legal, consegue fazer a autenticação legal, mas na hora que ele começa a enviar a mensagem ele da um erro ai aparece aquela mensagem conhecidada por todo mundo: [Ô]a aplicação [ô]x[ô] precisa ser fechada[Ô]!!!!

Ai eu testei com o próprio exemplo que vem no vbSendMail.... Conectou no servidor legal, conseguiu fazer a autenticação legal, mas na hora que ele começa a enviar a mensagem... De novo o erro!!!

Gostaria de saber se alguem ja teve essa experiencia, caso positivo, preciso de ajuda! Gostaria muito que minha aplicação pudesse enviar e-mail sem usa MAPI ou qualquer outro programa!!!

Agradeço desde ja!!
FUTURA 30/08/2010 08:14:55
#351677
ja testou em outro micro ?, registrou a dll ?,,,eu uso direto e não da erro não, só da erro se na lista de emails tiver um email errado, ai não vai nehnhum..
FILIPEBSANTOS 02/09/2010 22:11:34
#352081
Ainda n testei em outro micro, mas registrei a DLL, coloquei a referencia lá no VB e nada!! O que me impressiona é fato que ele faz a conexão com o servidor e tudo, mas só da erro na hora de enviar a mensagem!!!!

Tentei enviar pelo próprio exemplo que vem com a DLL... e nada! Na hora q ja esta enviando o email é que ele da erro!!!!

Mas será q o problema pode ser meu PC???
WEBSTERGONTIJO 03/09/2010 07:10:28
#352090
vou lhe passar um codigo para vc mandar email pega ai!!!!


imports System.net.Mail
Imports System.Text
Imports System.Security
Imports System.Net.Sockets

Public Class Form1



Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSend.Click
Dim mail As New MailMessage()
mail.From = New MailAddress([Ô]webstergontijo@gmail.com[Ô]) [ô] aqui é o seu email
mail.To.Add(txtTo.Text) [ô] aqui vai o email de destino
[ô] mail.Attachments.Add() [ô] adiciona anexo de arquivos
mail.Subject = txtSubject.Text
mail.Body = txtContent.Text
mail.Priority = MailPriority.High
mail.Headers.Add([Ô]X-Company[Ô], [Ô]Microsoft C[Ô])
mail.Headers.Add([Ô]X-Location[Ô], [Ô]USA[Ô])
Dim smtp As New SmtpClient([Ô]smtp.xxxxxx.com.br[Ô]) [ô] url do protocolo smtp do seu provedor, exemplo smtp.gmail.com
smtp.EnableSsl = CheckBoxSSL.Checked [ô] conexão segura do tipo ssl , nem todos os provedores precisam de conexão segura
smtp.Credentials = New System.Net.NetworkCredential([Ô]webstergontijo@gmail.com[Ô], [Ô]xxxxxxx[Ô]) [ô]coloca usuario e senha
Try
smtp.Send(mail)
MsgBox([Ô]mensagen enviada.[Ô], MsgBoxStyle.Information, [Ô]OK[Ô])
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical, [Ô]Mail Error[Ô])
End Try

End Sub



manda bala garoto!!!!
TECLA 03/09/2010 08:40:23
#352091
Resposta escolhida
A rotina postada pelo colega, é para VB .NET.

Voltando para o VB6, sugiro que utilize a biblioteca CDOSYS (pesquise aqui no site, no campo de busca) pois é muito fácil de implementar, e funciona 100%.
FILIPEBSANTOS 04/09/2010 17:03:56
#352220
Tecla,

Eu andei olhando o CDOSYS implementei, mas ele ta dando um erro que eu não to achando!!!

Olha a SS


Aqui está meu código



Private Sub cmdEnviar_Click()
Dim Msg As New CDO.Message, Config As New CDO.Configuration

With Config.Fields
.Item(cdoSendUsingMethod) = 1
.Item(cdoSMTPServer) = SMTP_SERVER
.Item(cdoSMTPServerPort) = SMTP_PORT
.Item(cdoSMTPConnectionTimeout) = 20
.Item(cdoSMTPAuthenticate) = SMTP_AUT
.Item(cdoSendUserName) = SMTP_USR
.Item(cdoSendPassword) = SMTP_PASS
.Update
End With

With Msg
Set .Configuration = Config
.To = lblEMailForn.Caption
.From = Email
.CC = lblEMailClie.Caption
.Subject = txtAssunto.Text
.TextBody = rtbCampoEMail.TextRTF
.MDNRequested = True
.AddAttachment txtAnexo.Text
.Send
End With

Select Case Err.Number
Case 0
MsgBox [Ô]E-mail enviado com sucesso![Ô], vbInformation, [Ô]Vende Ai[Ô]
Case Else
MsgBox [Ô]Falha no envio do e-mail![Ô], vbInformation, [Ô]Vende Ai[Ô]
End Select
End Sub



Ja li e re li o código e não estou achando o erro!

Você pode me ajudar???
FILIPEBSANTOS 04/09/2010 17:43:07
#352222
Consegui enviar o e-mail com sucesso!!!!

Mas me resta uma dúvida! Se o servidor requerer autenticação segura, ainda vai ser possível mandar o e-mail através do CDOSYS??

Outra! é possivel implementar uma ProgressBar para que o usuário veja o andamento do envio? Caso sim, pode postar um exemplo? Vlw!
Tópico encerrado , respostas não são mais permitidas