Enviar Correo con WEB Service

14/08/2003 - 19:32 por Marlon Martinez | Informe spam
Requiero que un WEB Service me sirva para enviar correos a
nivel interno en mi compañia. El envio de correos lo
solicitara una aplicacion Windows Forms dependiendo de
algunos eventos.
estoy haciendo algunas pruebas pero se presenta error

para pruebas hice un Cliente: (Un boton y cuatro cajitas
para From,To,subject y mensaje)

El evento click del boton
Dim Enviador As New marlonma.Service1()
Enviador.EnviadorCorreo(txtFrom.Text, txtTo.Text,
txtSubject.Text, txtMessage.Text)

El Metodo en el Servidor WEB

<WebMethod()> Public Sub EnviadorCorreo(ByVal From As
String, ByVal MailTo As String, ByVal Subject As String,
ByVal Mensaje As String)

System.Web.Mail.SmtpMail.Send(From, MailTo, Subject,
Mensaje)

End Sub

No comprendo porque algo tan sencillo como esto no me
funciona. Si lo hago desde el cliente directamente me
funciona o si hago esta implementacion en una libreria de
clases y referencio al cliente con la libreria y llamo
esta implementacion tambien me envia bien el correo.
Tampoco funciona si el web service sirve de fachada a una
libreria de clases con la implementacion.

No deseo que esto se haga desde los clientes directamente
pues requeriria tener instalado el IIS en cada cliente
para poder usar el servicio SmtpMail. En estos momentos
tengo clientes remotos windows accediendo a una
implementacion webservices en un servidor central, por eso
queria aprovechar este esquema para el envio de correos
por medio del IIS donde estan alojados los servicios web


Espero comprendan lo que quiero. Gracias

El error es este:

An unhandled exception of
type 'System.Web.Services.Protocols.SoapException'
occurred in system.web.services.dll

Additional information:
System.Web.Services.Protocols.SoapException: Server was
unable to process request. > System.Web.HttpException:
Could not access 'CDO.Message' object. >
System.Reflection.TargetInvocationException: Exception has
been thrown by the target of an invocation. >
System.Runtime.InteropServices.COMException (0x80040220):
No es válido el valor de configuración "SendUsing".

End of inner exception stack trace
at System.RuntimeType.InvokeDispMethod(String name,
BindingFlags invokeAttr, Object target, Object[] args,
Boolean[] byrefModifiers, Int32 culture, String[]
namedParameters)
at System.RuntimeType.InvokeMember(String name,
BindingFlags invokeAttr, Binder binder, Object target,
Object[] args, ParameterModifier[] modifiers, CultureInfo
culture, String[] namedParameters)
at System.Type.InvokeMember(String name, BindingFlags
invokeAttr, Binder binder, Object target, Object[] args)
at System.Web.Mail.LateBoundAccessHelper.CallMethod
(Type type, Object obj, String methodName, Object[] args)
at System.Web.Mail.LateBoundAccessHelper.CallMethod
(Object obj, String methodName, Object[] args)
End of inner exception stack trace
at System.Web.Mail.LateBoundAccessHelper.CallMethod
(Object obj, String methodName, Object[] args)
at System.Web.Mail.CdoSysHelper.Send(MailMessage
message)
at System.Web.Mail.CdoSysHelper.Send(String from,
String to, String subject, String messageText)
at System.Web.Mail.SmtpMail.Send(String from, String
to, String subject, String messageText)
at EnviaCorreo.Service1.EnviadorCorreo(String From,
String MailTo, String Subject, String Mensaje) in
c:\inetpub\wwwroot\EnviaCorreo\Service1.asmx.vb:line 60
End of inner exception stack trace



Marlon
 

Preguntas similares