Porqué falla el Mail con CDO?

15/07/2010 - 03:16 por Gustavo Gutierrez | Informe spam
Buenas Tardes:
Pues eso, que estoy desarrollando una aplicación que va a enviar una
gran cantidad de correos tomando de una tabla de access las
direcciones de destino y de otra tabla los datos de las cuentas de
salida. Para esto tengo una función, EnvioMasivo que hace la selección
de los destinatarios y le pasa los datos uno a uno a otra función,
EnvioIndividual, la cual selecciona de una tabla los datos de la
primera cuenta de origen disponible, y con CDO le pasa los datos:
Dim loCfg As CDO.Configuration
Dim loMsg As CDO.Message
Set loMsg = New CDO.Message
Set loCfg = New CDO.Configuration
Const sch = "http://schemas.microsoft.com/cdo/co...ion/"
strRemite = rsX.Collect("Clave")
strServer = rsX.Collect("Servidor")
strNombreorigen = rsX.Collect("Nombre")
strMailorigen = rsX.Collect("Correo")
intPuerto = rsX.Collect("Puerto")
bolSsl = rsX.Collect("Ssl")
bolAut = rsX.Collect("Autentificacion")
strPass = Crypto(rsX.Collect("Password"))
If bolSsl = True Then
intSsl = 1
Else
intSsl = 0
End If
If bolAut = True Then
intAut = 1
Else
intAut = 0
End If
With loCfg.Fields
.Item(sch & "smtpserver") = strServer
.Item(sch & "smtpserverport") = intPuerto
.Item(sch & "sendusing") = 2
.Item(sch & "sendusername") = strMailorigen
.Item(sch & "sendpassword") = strPass
.Item(sch & "smtpusessl") = intSsl
.Item(sch & "smtpconnectiontimeout") = 0
.Item(sch & "smtpauthenticate") = intAut
End With
loCfg.Fields.Update
strDe = strNombreorigen & " < " & strMailorigen & " > "
strPara = stName & " < " & stMail & " > "
With loMsg
.Configuration = loCfg
.From = strDe
.To = stMail
.Subject = TxtAsunto.Text
'aqui pongo la configuración de un HTML, no viene al caso...
.Fields.Update
.send
End With
Y es el caso que a veces envía varios correos y de repente me regresa
mensaje de "Not Available", o "Se perdió la conexión con el servidor"
o "Error de Transporte en la conexión al servidor". En todos estos
casos yo puedo abrir el cliente web de las cuentas de origen (Gmail,
Yahoo y Prodigy) y enviar correos sin problemas desde cada una de las
cuentas, de modo que el problema está en mi aplicación, no en el
servidor SMTP. En el caso de yahoo me regresa mensaje de que se
sobrepasó la capacidad de envío diario de la cuenta, aunque solo lleve
unos cuantos en el día. ¿Alguien sabe que puede estar pasando? Les voy
a agradecer muchísimo cualquier orientación que me puedan dar.

Gracias de antemano!

Preguntas similare

Leer las respuestas

#1 aa
15/07/2010 - 21:40 | Informe spam
Es porque yahoo y gmail se dan cuenta que estas haciendo spam.
Solo podes mandar 100 por dia por yahoo y gmail.
"Gustavo Gutierrez" wrote in message
news:
Buenas Tardes:
Pues eso, que estoy desarrollando una aplicación que va a enviar una
gran cantidad de correos tomando de una tabla de access las
direcciones de destino y de otra tabla los datos de las cuentas de
salida. Para esto tengo una función, EnvioMasivo que hace la selección
de los destinatarios y le pasa los datos uno a uno a otra función,
EnvioIndividual, la cual selecciona de una tabla los datos de la
primera cuenta de origen disponible, y con CDO le pasa los datos:
Dim loCfg As CDO.Configuration
Dim loMsg As CDO.Message
Set loMsg = New CDO.Message
Set loCfg = New CDO.Configuration
Const sch = "http://schemas.microsoft.com/cdo/co...ion/"
strRemite = rsX.Collect("Clave")
strServer = rsX.Collect("Servidor")
strNombreorigen = rsX.Collect("Nombre")
strMailorigen = rsX.Collect("Correo")
intPuerto = rsX.Collect("Puerto")
bolSsl = rsX.Collect("Ssl")
bolAut = rsX.Collect("Autentificacion")
strPass = Crypto(rsX.Collect("Password"))
If bolSsl = True Then
intSsl = 1
Else
intSsl = 0
End If
If bolAut = True Then
intAut = 1
Else
intAut = 0
End If
With loCfg.Fields
.Item(sch & "smtpserver") = strServer
.Item(sch & "smtpserverport") = intPuerto
.Item(sch & "sendusing") = 2
.Item(sch & "sendusername") = strMailorigen
.Item(sch & "sendpassword") = strPass
.Item(sch & "smtpusessl") = intSsl
.Item(sch & "smtpconnectiontimeout") = 0
.Item(sch & "smtpauthenticate") = intAut
End With
loCfg.Fields.Update
strDe = strNombreorigen & " < " & strMailorigen & " > "
strPara = stName & " < " & stMail & " > "
With loMsg
.Configuration = loCfg
.From = strDe
.To = stMail
.Subject = TxtAsunto.Text
'aqui pongo la configuración de un HTML, no viene al caso...
.Fields.Update
.send
End With
Y es el caso que a veces envía varios correos y de repente me regresa
mensaje de "Not Available", o "Se perdió la conexión con el servidor"
o "Error de Transporte en la conexión al servidor". En todos estos
casos yo puedo abrir el cliente web de las cuentas de origen (Gmail,
Yahoo y Prodigy) y enviar correos sin problemas desde cada una de las
cuentas, de modo que el problema está en mi aplicación, no en el
servidor SMTP. En el caso de yahoo me regresa mensaje de que se
sobrepasó la capacidad de envío diario de la cuenta, aunque solo lleve
unos cuantos en el día. ¿Alguien sabe que puede estar pasando? Les voy
a agradecer muchísimo cualquier orientación que me puedan dar.

Gracias de antemano!
Respuesta Responder a este mensaje
#2 Gusty
16/07/2010 - 23:40 | Informe spam
Buenas
Proba a esperar un tiempo entre envio y envio, porque si empezas a
mandar muchos email
sin tiempo entre ellos, te van a marcar la cuenta como posible
generardor spam y te va a dar todo tipo de errores distinto.

Saludos
==

On 14 jul, 22:16, Gustavo Gutierrez wrote:
Buenas Tardes:
Pues eso, que estoy desarrollando una aplicación que va a enviar una
gran cantidad de correos tomando de una tabla de access las
direcciones de destino y de otra tabla los datos de las cuentas de
salida. Para esto tengo una función, EnvioMasivo que hace la selección
de los destinatarios y le pasa los datos uno a uno a otra función,
EnvioIndividual, la cual selecciona de una tabla los datos de la
primera cuenta de origen disponible, y con CDO le pasa los datos:
    Dim loCfg As CDO.Configuration
    Dim loMsg As CDO.Message
    Set loMsg = New CDO.Message
    Set loCfg = New CDO.Configuration
       Const sch = "http://schemas.microsoft.com/cdo/co...ion/"
        strRemite = rsX.Collect("Clave")
        strServer = rsX.Collect("Servidor")
        strNombreorigen = rsX.Collect("Nombre")
        strMailorigen = rsX.Collect("Correo")
        intPuerto = rsX.Collect("Puerto")
        bolSsl = rsX.Collect("Ssl")
        bolAut = rsX.Collect("Autentificacion")
        strPass = Crypto(rsX.Collect("Password"))
        If bolSsl = True Then
            intSsl = 1
        Else
            intSsl = 0
        End If
        If bolAut = True Then
            intAut = 1
        Else
            intAut = 0
        End If
        With loCfg.Fields
            .Item(sch & "smtpserver") = strServer
            .Item(sch & "smtpserverport") = intPuerto
            .Item(sch & "sendusing") = 2
            .Item(sch & "sendusername") = strMailorigen
            .Item(sch & "sendpassword") = strPass
            .Item(sch & "smtpusessl") = intSsl
            .Item(sch & "smtpconnectiontimeout") = 0
            .Item(sch & "smtpauthenticate") = intAut
        End With
        loCfg.Fields.Update
        strDe = strNombreorigen & " < " & strMailorigen & " > "
        strPara = stName & " < " & stMail & " > "
        With loMsg
            .Configuration = loCfg
            .From = strDe
            .To = stMail
            .Subject = TxtAsunto.Text
       'aqui pongo la configuración de un HTML, no viene al caso...
            .Fields.Update
            .send
        End With
Y es el caso que a veces envía varios correos y de repente me regresa
mensaje de "Not Available", o "Se perdió la conexión con el servidor"
o "Error de Transporte en la conexión al servidor". En todos estos
casos yo puedo abrir el cliente web de las cuentas de origen (Gmail,
Yahoo y Prodigy) y enviar correos sin problemas desde cada una de las
cuentas, de modo que el problema está en mi aplicación, no en el
servidor SMTP. En el caso de yahoo me regresa mensaje de que se
sobrepasó la capacidad de envío diario de la cuenta, aunque solo lleve
unos cuantos en el día. ¿Alguien sabe que puede estar pasando? Les voy
a agradecer muchísimo cualquier orientación que me puedan dar.

Gracias de antemano!
Respuesta Responder a este mensaje
#3 aa
16/07/2010 - 23:43 | Informe spam
Aunque los mandes cada 10 minutos mas de 100 por dia no se puede.
"Gusty" wrote in message
news:
Buenas
Proba a esperar un tiempo entre envio y envio, porque si empezas a
mandar muchos email
sin tiempo entre ellos, te van a marcar la cuenta como posible
generardor spam y te va a dar todo tipo de errores distinto.

Saludos
==

On 14 jul, 22:16, Gustavo Gutierrez wrote:
Buenas Tardes:
Pues eso, que estoy desarrollando una aplicación que va a enviar una
gran cantidad de correos tomando de una tabla de access las
direcciones de destino y de otra tabla los datos de las cuentas de
salida. Para esto tengo una función, EnvioMasivo que hace la selección
de los destinatarios y le pasa los datos uno a uno a otra función,
EnvioIndividual, la cual selecciona de una tabla los datos de la
primera cuenta de origen disponible, y con CDO le pasa los datos:
Dim loCfg As CDO.Configuration
Dim loMsg As CDO.Message
Set loMsg = New CDO.Message
Set loCfg = New CDO.Configuration
Const sch = "http://schemas.microsoft.com/cdo/co...ion/"
strRemite = rsX.Collect("Clave")
strServer = rsX.Collect("Servidor")
strNombreorigen = rsX.Collect("Nombre")
strMailorigen = rsX.Collect("Correo")
intPuerto = rsX.Collect("Puerto")
bolSsl = rsX.Collect("Ssl")
bolAut = rsX.Collect("Autentificacion")
strPass = Crypto(rsX.Collect("Password"))
If bolSsl = True Then
intSsl = 1
Else
intSsl = 0
End If
If bolAut = True Then
intAut = 1
Else
intAut = 0
End If
With loCfg.Fields
.Item(sch & "smtpserver") = strServer
.Item(sch & "smtpserverport") = intPuerto
.Item(sch & "sendusing") = 2
.Item(sch & "sendusername") = strMailorigen
.Item(sch & "sendpassword") = strPass
.Item(sch & "smtpusessl") = intSsl
.Item(sch & "smtpconnectiontimeout") = 0
.Item(sch & "smtpauthenticate") = intAut
End With
loCfg.Fields.Update
strDe = strNombreorigen & " < " & strMailorigen & " > "
strPara = stName & " < " & stMail & " > "
With loMsg
.Configuration = loCfg
.From = strDe
.To = stMail
.Subject = TxtAsunto.Text
'aqui pongo la configuración de un HTML, no viene al caso...
.Fields.Update
.send
End With
Y es el caso que a veces envía varios correos y de repente me regresa
mensaje de "Not Available", o "Se perdió la conexión con el servidor"
o "Error de Transporte en la conexión al servidor". En todos estos
casos yo puedo abrir el cliente web de las cuentas de origen (Gmail,
Yahoo y Prodigy) y enviar correos sin problemas desde cada una de las
cuentas, de modo que el problema está en mi aplicación, no en el
servidor SMTP. En el caso de yahoo me regresa mensaje de que se
sobrepasó la capacidad de envío diario de la cuenta, aunque solo lleve
unos cuantos en el día. ¿Alguien sabe que puede estar pasando? Les voy
a agradecer muchísimo cualquier orientación que me puedan dar.

Gracias de antemano!
Respuesta Responder a este mensaje
#4 gustavo gutierrez
18/07/2010 - 04:23 | Informe spam
On 16 jul, 16:43, "aa" wrote:
Aunque los mandes cada 10 minutos mas de 100 por dia no se puede."Gusty" wrote in message

news:
Buenas
  Proba a esperar un tiempo entre envio y envio, porque si empezas a
mandar muchos email
sin tiempo entre ellos, te van a marcar la cuenta como posible
generardor spam y te va a dar todo tipo de errores distinto.

Saludos
­==>
On 14 jul, 22:16, Gustavo Gutierrez wrote:



> Buenas Tardes:
> Pues eso, que estoy desarrollando una aplicación que va a enviar una
> gran cantidad de correos tomando de una tabla de access las
> direcciones de destino y de otra tabla los datos de las cuentas de
> salida. Para esto tengo una función, EnvioMasivo que hace la selección
> de los destinatarios y le pasa los datos uno a uno a otra función,
> EnvioIndividual, la cual selecciona de una tabla los datos de la
> primera cuenta de origen disponible, y con CDO le pasa los datos:
> Dim loCfg As CDO.Configuration
> Dim loMsg As CDO.Message
> Set loMsg = New CDO.Message
> Set loCfg = New CDO.Configuration
> Const sch = "http://schemas.microsoft.com/cdo/co...ion/"
> strRemite = rsX.Collect("Clave")
> strServer = rsX.Collect("Servidor")
> strNombreorigen = rsX.Collect("Nombre")
> strMailorigen = rsX.Collect("Correo")
> intPuerto = rsX.Collect("Puerto")
> bolSsl = rsX.Collect("Ssl")
> bolAut = rsX.Collect("Autentificacion")
> strPass = Crypto(rsX.Collect("Password"))
> If bolSsl = True Then
> intSsl = 1
> Else
> intSsl = 0
> End If
> If bolAut = True Then
> intAut = 1
> Else
> intAut = 0
> End If
> With loCfg.Fields
> .Item(sch & "smtpserver") = strServer
> .Item(sch & "smtpserverport") = intPuerto
> .Item(sch & "sendusing") = 2
> .Item(sch & "sendusername") = strMailorigen
> .Item(sch & "sendpassword") = strPass
> .Item(sch & "smtpusessl") = intSsl
> .Item(sch & "smtpconnectiontimeout") = 0
> .Item(sch & "smtpauthenticate") = intAut
> End With
> loCfg.Fields.Update
> strDe = strNombreorigen & " < " & strMailorigen & " > "
> strPara = stName & " < " & stMail & " > "
> With loMsg
> .Configuration = loCfg
> .From = strDe
> .To = stMail
> .Subject = TxtAsunto.Text
> 'aqui pongo la configuración de un HTML, no viene al caso...
> .Fields.Update
> .send
> End With
> Y es el caso que a veces envía varios correos y de repente me regresa
> mensaje de "Not Available", o "Se perdió la conexión con el servidor"
> o "Error de Transporte en la conexión al servidor". En todos estos
> casos yo puedo abrir el cliente web de las cuentas de origen (Gmail,
> Yahoo y Prodigy) y enviar correos sin problemas desde cada una de las
> cuentas, de modo que el problema está en mi aplicación, no en el
> servidor SMTP. En el caso de yahoo me regresa mensaje de que se
> sobrepasó la capacidad de envío diario de la cuenta, aunque solo lleve
> unos cuantos en el día. ¿Alguien sabe que puede estar pasando? Les voy
> a agradecer muchísimo cualquier orientación que me puedan dar.

> Gracias de antemano!- Ocultar texto de la cita -

- Mostrar texto de la cita -



Gracias a todos por sus opiniones. Y si, al final tendré que buscar
otra solución para lo que necesito, que no es SPAM ni mucho menos,
Saludos,
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida