Buenas tardes:
Un cliente ha contratado un hosting en Godaddy y este servicio sólo ofrece 2 formas de enviar emails vía ASP: o sus formularios (limitados a 1 sola cuenta) o vía CDONT o CDOSYS.
Ahora bien, he determinado que ambos servicios están operativos porque ejecuté una página de testeo con este código:
Código:
<%
Dim theComponent(5)
Dim theComponentName(5)
theComponent(0) = "ADODB.Connection"
theComponent(1) = "Scripting.FileSystemObject"
theComponent(2) = "CDONTS.NewMail"
theComponent(3) = "Persits.Upload.1"
theComponent(4) = "CDO.Message"
theComponentName(0) = "ADODB"
theComponentName(1) = "FileSystemObject"
theComponentName(2) = "CDONTS"
theComponentName(3) = "Persits Upload"
theComponentName(4) = "CDOSYS"
Function IsObjInstalled(strClassString)
On Error Resume Next
IsObjInstalled = False
Err = 0
Dim xTestObj
Set xTestObj = Server.CreateObject(strClassString)
If 0 = Err Then IsObjInstalled = True
Set xTestObj = Nothing
Err = 0
End Function
%>
<%
Dim i
For i=0 to UBound(theComponent)
If Not IsObjInstalled(theComponent(i)) Then
Else
Response.Write "<tr>" & vbCrLf
Response.Write "<td width=""100%"">" & vbCrLf
Response.Write "<b>" & theComponentName(i) & "</b><br>" & vbCrLf
Response.Write "</td>" & vbCrLf
Response.Write "</tr>" & vbCrLf
End If
Next
%>
Y los 5 componentes son mostrados como operativos (eliminé aquellos que no son mostrados pues sería un código largo y no viene al caso). Entonces me puse manos a la obra y implementé este código para enviar un simple email:
Código:
<%
Set oMail = Server.CreateObject("CDO.Message")
para = "[email protected]"
de = "[email protected]"
asunto = "El asunto de mi email"
mensaje = "El mensaje del mail..."
oMail.From = de
oMail.To = para
oMail.Subject= asunto
oMail.TextBody = mensaje
oMail.Send
Set oMail = Nothing
%>
Es el que siempre uso y no hay problema. Excepto que me tira este error siempre:
Código:
CDO.Message.1 error '80040220'
The "SendUsing" configuration value is invalid.
/prueba.asp, line 15
y la línea 15 en cuestión es
oMail.Send
Ahora bien. en la ayuda de Godaddy aparece este código como el "adecuado" para usarlo:
Código:
<%
// language -- C#
// import namespace
using System.Web.Mail;
private void SendEmail()
{
const string SERVER = "relay-hosting.secureserver.net";
MailMessage oMail = new System.Web.Mail.MailMessage();
oMail.From = "[email protected]";
oMail.To = "[email protected]";
oMail.Subject = "Test email subject";
oMail.BodyFormat = MailFormat.Html; // enumeration
oMail.Priority = MailPriority.High; // enumeration
oMail.Body = "Sent at: " + DateTime.Now;
SmtpMail.SmtpServer = SERVER;
SmtpMail.Send(oMail);
oMail = null; // free up resources
}
%>
Pero el problema es que no se como usarlo. Probé reemplazar los valores de correo pero el error que me tira es este:
Código:
Microsoft VBScript compilation error '800a0401'
Expected end of statement
/prueba.asp, line 4
using System.Web.Mail;
---------------------^
y la línea 4 es
using System.Web.Mail;
Lo que necesito hacer es simple: enviar 3 emails (1 de confirmación, uno al webmaster y otro al administrador, cada uno con un texto diferente). Los formularios que me ofrecen "sólo permiten CC" (carbon copy) y claro, se mostraría la dirección del webmaster y del administrador cosa que no se desea.
Dado que tiene implementado el CDONT y CDOSYS es claro que algo estoy omitiendo en este caso pero ignoro que puede ser.
Por favor si pueden ayudarme con este tema les quedaré en deuda.
Un saludo cordial desde Lima, Perú