Envio de emails con CDO - con Autentificacion
Con este tipo de envio CDO dependemos de Microsoft, para nuestro envio de emails, aunque es necesario que tengamos un Servidor SMTP de Emails instalado en el servidor, no funcionará si nuestro servidor no soporta SMTP.
Las Primaras lineas no deben de ser modificadas si no se sabe exactamente lo que hacemos.
Const cdoSendUsingPickup = 1
Const cdoSendUsingPort = 2
Const cdoAnonymous = 0
Const cdoBasic = 1
Const cdoNTLM = 2
Las siguientes lineas refieren a la configuración del mensaje que se va a enviar.
mensaje.Subject = Titulo del mensaje
mensaje.Sender = Desde donde se envia el mensaje
mensaje.To = A donde va dirigido el mensaje
mensaje.TextBody = Cuerpo del mensaje
Despues de estas lineas no es recomendable modificar nada mas, exepto:
"mail.tu_servidor.com" | Donde se indicará tu servidor de email.
"Usuario" | Donde indicaremos el nombre de usuario de tu Servidor de Email.
"Clave" | Debemos indicar el Password o Clave de Usuario de Tu servidor de Email.
El resto como antes indicamos no seria conveniente modificarlo.
<% 'Codigo ofrecido por Tutores.org %>
<%
Const cdoSendUsingPickup = 1
Const cdoSendUsingPort = 2
Const cdoAnonymous = 0
Const cdoBasic = 1
Const cdoNTLM = 2
Set mensaje = CreateObject("CDO.Message")
mensaje.Subject = "Ejemplo de Cdo con autentificacion de usuario"
mensaje.Sender = "yo@mi_domino.com"
mensaje.To = "tu@tu_dominio.com"
mensaje.TextBody = "Este es un ejemplo de texto"
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mail.tu_servidor.com"
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/authenticate") = cdoBasic
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusername") = "USUARIO"
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "Clave"
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
mensaje.Configuration.Fields.Update
mensaje.Send
%>
<a title="Tutores.org - Envio de emails con CDO - con Autentificacion" href="http://www.tutores.org/codigo/978/" target="_blank">Envio de emails con CDO - con Autentificacion</a>
<!-- Final enlace Tutores.org -->
Por favor, indicadme qué puede ocurrir.
Gracias y un saludo
hemos añadido varias instrucciones sobre la configuración del Script.
A ver si de esta forma consigues que funcione.
saludos
<a href="http://www.tutores.org">Codigo ofrecido por Tutores.org</a>
<%
Const cdoSendUsingPickup = 1
Const cdoSendUsingPort = 2
Const cdoAnonymous = 0
Const cdoBasic = 1
Const cdoNTLM = 2
Set mensaje = CreateObject("CDO.Message")
mensaje.Subject = "Ejemplo de Cdo con autentificacion de usuario"
mensaje.Sender = "yo@mi_domino.com"
mensaje.To = "tu@tu_dominio.com"
mensaje.TextBody = "Este es un ejemplo de texto"
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mail.tu_servidor.com"
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/authenticate") = cdoBasic
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusername") = "USUARIO"
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "Clave"
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
mensaje.Configuration.Fields.Update
mensaje.Send
%>[*/CODE*]
He probado las dos variantes:
mensaje.AddAttachment(wScript.Arguments(0))
y da el siguiente error:
CDO.Message.1: The specified protocol is unknown.
Dim attachment As New MailAttachment(Server.MapPath("ok.txt"))
mensaje.Attachments.Add(attachment)
y
tampoco funciona.
Gracias por vuestro tiempo.
mensaje.AddAttachment "c: uarchivo.txt"
saludos
'este es el código que funciona (ojo... es importante tener claro que es preciso un servidor SMTP en la intranet, sino, deberas usar MAPI)
Const cdoSendUsingMethod = "http://schemas.microsoft.com/cdo/configuration/sendusing"
Const cdoSMTPServerPort = "http://schemas.microsoft.com/cdo/configuration/smtpserverport"
Const cdoSendUserName = "http://schemas.microsoft.com/cdo/configuration/sendusername"
Const cdoSMTPServer = "http://schemas.microsoft.com/cdo/configuration/smtpserver"
Const cdoSendPassword = "http://schemas.microsoft.com/cdo/configuration/sendpassword"
------------------
Dim myMail
Set myMail = CreateObject("CDO.message")
'27/6/2007 Cambio de servidor: Error -2147220975(80040211) Servidor not available
Dim cdoConfig
Set cdoConfig = CreateObject("CDO.Configuration")
With cdoConfig.Fields
.Item(cdoSendUsingMethod) = 2 'cdoSendUsingPort=2
.Item(cdoSMTPServerPort) = 25
.Item(cdoSMTPServer) = "correo.mismtp.es"
.Item(cdoSendUserName) = "envioauto@tralari.es"
.Item(cdoSendPassword) = "autoenvio"
.Update
End With
Set myMail.Configuration = cdoConfig
myMail.From = "perico@tralari.es"
myMail.To = "perica@tralari.es"
myMail.Subject = "Prueba desde un POGAMA"
myMail.textBody = "Prueba desde EL SUPE-POGAMA"
myMail.Send
Set myMail = Nothing
MsgBox "Enviado"
tengo contratado un hosting con la empresa Godaddy americana y tambien el correo de mi dominio con ellos, he provado mil codigos con ellos y mis servidores como yahoo, hotmail, gmail... y no me funciona el codigo siempre me da este error:
CDO.Message.1 error '80040213'
The transport failed to connect to the server.
/mail.asp, line 32
he probado vuestro codigo que me parec perfecto:
[*CODE*]<!-- El codigo ha sido proporcionado: http://www.tutores.org -->
<a href="http://www.tutores.org">Codigo ofrecido por Tutores.org</a>
<%
Const cdoSendUsingPickup = 1
Const cdoSendUsingPort = 2
Const cdoAnonymous = 0
Const cdoBasic = 1
Const cdoNTLM = 2
Set mensaje = CreateObject("CDO.Message")
mensaje.Subject = "Ejemplo de Cdo con autentificacion de usuario"
mensaje.Sender = "info@pielnatur.com"
mensaje.To = "nivola69@hotmail.com"
mensaje.TextBody = "Este es un ejemplo de texto"
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtpout.secureserver.net"
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/authenticate") = cdoBasic
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusername") = "info@pielnatur.com"
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "******"
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False
mensaje.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
mensaje.Configuration.Fields.Update
mensaje.Send
%>[*/CODE*]
todos estos parametros en el outlook me funcionan, no enteiendo por que no me va el código, es muy urgente necesito lanzar una web y por todo esto no puedo aun.
Gracias,
Arian
Este código te funcionará, ya que es de una web de godaddy.
______________
<%
Const cdoSendUsingPickup = 1 'Send message using the local SMTP service pickup directory.
Const cdoSendUsingPort = 2 'Send the message using the network (SMTP over the network).
Const cdoAnonymous = 0 'Do not authenticate
Const cdoBasic = 1 'basic (clear-text) authentication
Const cdoNTLM = 2 'NTLM
Set objMessage = CreateObject("CDO.Message")
objMessage.Subject = "Presupuesto desde la web"
objMessage.From = """Super Empresa"" <info@laempresa.com>"
'objMessage.To = "info@laempresa.com"
objMessage.To = "danone_chocolate@hotmail.com"
objMessage.TextBody = "mensajito"
'==This section provides the configuration information for the remote SMTP server.
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
'Name or IP of Remote SMTP Server
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mail.loquesea.com"
'Type of authentication, NONE, Basic (Base64 encoded), NTLM
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic
'Your UserID on the SMTP server
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusername") = "nombredeusuarioaquidelacuentaemail"
'Your password on the SMTP server
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "contraseniaaquidelacuentaemail"
'Server port (typically 25)
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
'Use SSL for the connection (False or True)
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False
'Connection Timeout in seconds (the maximum time CDO will try to establish a connection to the SMTP server)
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
objMessage.Configuration.Fields.Update
'==End remote SMTP server configuration section==
objMessage.Send
'Response.Redirect ("enviado.asp")
%>
_______________
http://schemas.microsoft.com/cdo/configuration
cuales son los valores que se asumen por default?
gracias
Saludos
"http://schemas.microsoft.com/cdo/configuration"
ya que en el servidor donde configure en el envio de correos a travez de CDO no tiene internet.
saludos












