none
Servicio de Windows para enviar correos RRS feed

  • Pregunta

  • Hola..

    Tengo un servicio de Windows.. con el cual intento enviar correos utilizando mi cuenta de Outlook.. pero los correos no se envian.

    el Código del servicio es el siguiente.

     

    Imports System.Threading

    Imports System.IO

    Imports System.Diagnostics

    Public Class Noti

        Private Hilo As Thread = Nothing

        Private objFile As File

        Private objWriter As StreamWriter

        Private log As New EventLog

        Private PathFile As String = Configuration.ConfigurationSettings.AppSettings("PathFile")

        Private timeSleep As Integer = Configuration.ConfigurationSettings.AppSettings("timeSleep")

        Protected Overrides Sub OnStart(ByVal args() As String)

            ' Agregue el código aquí para iniciar el servicio. Este método debería poner

            ' en movimiento los elementos para que el servicio pueda funcionar.

            Dim start As ThreadStart = New ThreadStart(AddressOf Writing)

            Try

                Hilo = New Thread(start)

                Hilo.Start()

            Catch ex As Exception

                'LogEvent(ex.Message)

            End Try

        End Sub

     

        Public Sub Writing()

            SendCorreo("minombre@midominio.com", "", "", "Servicio", "", "", "Notificación del Servicio", False)

        End Sub

     

        Public Function SendCorreo(ByVal Para As String, ByVal CC As String, ByVal BCC As String, ByVal Asunto As String, ByVal Archivo As String, ByVal Display As String, ByVal Contenido As String, ByVal isHtmlRTF As Boolean) As Boolean

            '[1. El primer paso es crear una aplicación de Outlook]

            Dim oApp As New Microsoft.Office.Interop.Outlook.Application

            ' Crear un nuevo elemento de correo. 

            '[2. Una vez realizado el punto 1, se procede a crear un correo electrónico]

            Try

                Dim oMsg As Microsoft.Office.Interop.Outlook._MailItem

                oMsg = oApp.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem)

                oMsg.Subject = Asunto

                If isHtmlRTF = True Then

                    oMsg.HTMLBody = Contenido

                Else

                    oMsg.Body = Contenido

                End If

                oMsg.CC = CC

                oMsg.BCC = BCC

                '[3. Indicar la dirección del usuario a quien se le enviará el mensaje de correo]

                oMsg.To = Para

                '[4. Para agregar un dato adjunto, se sigue de este modo, indicando la ruta de acceso al archivo solicitado]

                Dim sSource As String = Archivo

                Dim oAttachs As Microsoft.Office.Interop.Outlook.Attachments = oMsg.Attachments

                Dim oAttach As Microsoft.Office.Interop.Outlook.Attachment

                If Archivo.Length > 0 Then

                    Dim sDisplayName As String = Display

                    Dim sBodyLen As String = Contenido.Length

                    oAttach = oAttachs.Add(sSource, , sBodyLen + 1, sDisplayName)

                End If

                oMsg.Send()

                oMsg = Nothing

                oAttach = Nothing

                oAttachs = Nothing

                Return True

            Catch ex As Exception

     

            End Try

        End Function

     

        Protected Overrides Sub OnStop()

            ' Agregue el código aquí para realizar cualquier anulación necesaria para detener el servicio.

        End Sub

     

    End Class

     

    miércoles, 1 de febrero de 2012 15:08