Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

marina limeira

Como resolver erro de envio CDOSYS

Recommended Posts

meu site eu mandava em e-mail pelo CDOSYS pois o servidor é WINDOWS 2003 ......

 

o erro é assim

 

CDO.Message.1 error '80040213' The transport failed to connect to the server.

 

 

estava funcionando tudo direitinho mais do nada resolveu dar esse erro as vezes com mais ou menos frequencia ja que uso conta de emails hospedado no google aps.

 

como resolver estes erros que ja vi na net é comum, pois o formulario é grande e no final a pessoa ver que da erro deixa qualquer um triste. e desanima ter que começar novamente.

 

qualquer ideia e ajuda sao bem vindos

 

obrigada

Marina

Compartilhar este post


Link para o post
Compartilhar em outros sites

verificou se seu server.dominio.com esta OK, isso pode ser uma instabilidade do serviço...

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim testei e esta tudo OK

 

Porem sempre pode ocorrer instabilidades aleatoriamente em qualquer servidor mesmo sendo um especialista em emails como o servidor GOOGLE e estando tudo OK no servidor Windows Server.

 

Portanto a ideia como tratar o erro e continuar insistindo a tentativa de enviar os dados para que o usuario nao veja estes erros?

Com certeza isso vai ajudar muita gente...

 

Marina

Compartilhar este post


Link para o post
Compartilhar em outros sites

Utilize ON ERROR RESUME NEXT para tratar o erro e exibir uma mensagem "amigável" ao usuário.

Compartilhar este post


Link para o post
Compartilhar em outros sites

isso provavelmente pode ser instabilidade do serviço...

procure no fórum, que existe um tópico, de sua autoria mesmo, perguntando a mesma coisa neste post...

Compartilhar este post


Link para o post
Compartilhar em outros sites

O On Error Resume Next se for usado de forma errada ele torna-se péssimo,Tratamento de Erros são essenciais em aplicações, mas por outro lado o seu uso pode dar enorme queda na performance das páginas que possuem tratamento de erro, por exemplo abrindo uma conexão que dá erro por algum motivo e usando o On Error para tratar o script vai para o próximo passo, ignorando o erro, e tenta abrir um recodset de uma conexão que falhou, prejudicando o servidor.

tome cuidado e fça uma busca no forum que existem alguns exemplos, se em caso de duvida , só postar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tentei fazer alguns testes mas ainda persiste no erro

do envio no tradicional

 

.SEND

 

com o erro:

 

CDO.Message.1 erro '80040213'

Falha na conexão do transporte com o servidor.

 

 

os serviços google de envio de emails esta ok pois testo a mesma conta com o outlook e esta ok ..

mas no envio via ASP insiste no erro

 

estou desesperada.. alguma sugestao ?

 

obrigada

Marina

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta um outro dominio para testar, e qual porta esta usando ? é a 25 !

 

objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport")= 25 
objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2

e dá uma olhada na referencia:

link

 

e verifique se o email é valido, pois tentei certa vez com email errado e deu este problema...

Compartilhar este post


Link para o post
Compartilhar em outros sites

dá uma pesquisada no forum que existe muito conteudo sobre On Error Resume Next,

senao encontrar posta aqui...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se ainda estiver com bronca, segue:

 

Envio de E-mail Usando CDOSYS

 

Em uma troca de servidor do site de um dos meus clientes, me deparei com um seguinte problema: Só era permitido o envio de emails usando o componente CDOSYS. Na hora eu pensei que era apenas em sites com asp, mas não, para a minha decepção e dor de cabeça piorar, as páginas asp.net também só enviavam com CDOSYS, e o pior o servidor tinha apenas tutorial para páginas asp. Como nunca tinha usado o CDOSYS em asp.net fui procurar no “google” mas achei apenas tutoriais em asp.

 

No final das contas eu mesmo sozinho adaptei o código com o pouco de conhecimento que tenho em asp.net e para minha surpresa funcionou.

 

Abaixo estão os códigos para envio de e-mails usando CDOSYS em asp.net (VB)

 

Usando o Visual Web developer 2008 criei uma página chamada form.aspx e abaixo está o código para montar a parte visual do seu formulário:

 

<form id=”form1″ runat=”server”>
<div>
<h2>
Fale Conosco</h2>
<p>
Nome:
<asp:TextBox ID=”txtnome” runat=”server” Width=”280px”></asp:TextBox>
<br />
E-mail:
<asp:TextBox ID=”txtemail” runat=”server” Width=”277px”></asp:TextBox>
<br />
Comentários:
<br />
<asp:TextBox ID=”txtcomentarios” runat=”server” Width=”326px” Height=”69px”
TextMode=”MultiLine”></asp:TextBox>
</p>
<p>
<asp:Button ID=”Button1″ runat=”server” Text=”Enviar” />
</p>
<p>
<asp:Label ID=”lblmensagem” runat=”server”></asp:Label>
<br />
</p>
</div>
</form>

Abaixo estão os códigos do arquivo form.aspx.vb com comentarios para enviar o e-mail.

 

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim nome As String = txtnome.Text ‘captura os dados do campo nome
Dim email As String = Trim(txtemail.Text) ‘Tira os espaços se houver e captura os dados do campo e-mail
Dim comentarios As String = txtcomentarios.Text ‘Captura os dados do campo comentarios
‘abaixo estão as configurações do CDOSYS o que deve ser alterado está com comentario o restante não precisa modificar
Dim sch = “http://schemas.microsoft.com/cdo/configuration/”
Dim cdoConfig = Server.CreateObject(”CDO.Configuration”)
cdoConfig.Fields.Item(sch & “sendusing”) = 2
cdoConfig.Fields.Item(sch & “smtpauthenticate”) = 1
cdoConfig.Fields.Item(sch & “smtpserver”) = “smtp.site.com.br” ‘digite seu servidor SMTP
cdoConfig.Fields.Item(sch & “smtpserverport”) = 25 ‘Digite a porta segura para envio 25 é padrão
cdoConfig.Fields.Item(sch & “smtpconnectiontimeout”) = 30
‘os e-mails são enviados apenas com autenticação por isso você terá que informar um email e senha válido
cdoConfig.Fields.Item(sch & “sendusername”) = “web@seu_dominio.com.br” ‘digite um email válido para autenticar
cdoConfig.Fields.Item(sch & “sendpassword”) = “senha” ‘digite sua senha
cdoConfig.fields.update()
Dim cdoMessage = Server.CreateObject(”CDO.Message”)
cdoMessage.Configuration = cdoConfig
cdoMessage.From = email ‘ENDEREÇO DE E-MAIL QUE SERÁ EXIBIDO NO FROM DA MENSAGEM
cdoMessage.To = “contato@seudomínio.com.br” ‘digite o email para qual a mensagem será entregue.
cdoMessage.Subject = “Fale Conosco” ‘ Digite o assunto da mensagem
Dim strBody = comentarios
cdoMessage.HTMLBody = strBody
Try
cdoMessage.Send()
cdoMessage = Nothing
cdoConfig = Nothing
’se não houver erros a mensagem é enviada e a mensagem abaixo é exibida
lblmensagem.Text = “Mensagem entregue com sucesso”
‘limpa os campos do formulario
txtcomentarios.Text = Nothing
txtemail.Text = Nothing
txtnome.Text = Nothing
Catch ex As Exception
’se houver algum erro, captura a mensagem de erro do servidor e exibe na tela
Dim erro_mail As String = “Erro na hora de enviar email : ” & ex.Message
lblmensagem.Text = erro_mail
cdoMessage = Nothing
cdoConfig = Nothing
End Try
End Sub

Pronto O sistema de envio de e-mail com CDOSYS está concluído.

 

Se houver alguma dúvida podem comentar que eu esclareço.

 

Foi pego no site: http://www.ds2web.com.br/site/?p=13

 

Testei com uma aplicação e funcionou. Vale ressaltar q rodei direto da internet.

Compartilhar este post


Link para o post
Compartilhar em outros sites
wilsonjr, esse fórum é de ASP 3. O código postado é de ASP.NET.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.