Cómo: Crear mensajes de correo electrónico programados mediante WSH y CDONTS


Se recomienda encarecidamente a todos los usuarios que actualicen a la versión 7.0 de Microsoft Internet Information Services (IIS) que se ejecuta en Microsoft Windows Server 2008. IIS 7.0 aumenta considerablemente la seguridad de la infraestructura Web. Para obtener más información acerca de temas relacionados con la seguridad IIS, visite el siguiente sitio Web de Microsoft:Para obtener más información acerca de IIS 7.0, visite el siguiente sitio Web de Microsoft:

Resumen


De forma predeterminada, Microsoft Windows NT 4.0 con el Windows NT Option Pack (NTOP) y Microsoft Windows 2000 instala un servicio de Protocolo Simple de transferencia de correo (SMTP) que puede utilizarse para una variedad de propósitos. Uno de los usos más comunes es de páginas Active Server (ASP) para el control de formulario HTML basado en correo electrónico.

En este artículo paso a paso se describe cómo crear envíos programados mediante Windows Script Host (WSH) y las características de correo electrónico del servicio SMTP CDONTS. NewMail objeto. En el ejemplo se muestra cómo crear un archivo de texto que se puede actualizar para el contenido del mensaje de correo electrónico, una secuencia de comandos WSH para enviar un mensaje de correo electrónico y una tarea programada para programar el mensaje de correo electrónico que se envíe.



Compruebe que está ejecutando el servicio programador

  • En un equipo que ejecuta Windows NT 4.0 y servicios de Internet Information Server (IIS) 4.0:
    1. Haga clic en Inicio, haga clic en configuración y, a continuación, haga clic en Panel de Control.
    2. En el Panel de Control, haga doble clic en Servicios.
    3. Desplácese hasta el servicio Programador de tareas .
    4. Compruebe que estado indica iniciado. Si no se establece el estado a iniciado, haga clic en Programador de tareas y, a continuación, haga clic en Inicio.
    5. Compruebe que Inicio indica automáticas. Si no se establece el Inicio automático, haga clic en para seleccionar el Programador de tareas y, a continuación, haga clic en Inicio. En Tipo de inicio, seleccione automáticoy, a continuación, haga clic en Aceptar.
    6. Haga clic en Cerrar.
    7. Para salir, cierre el Panel de Control.
  • En un equipo que ejecuta Windows 2000 y servicios de Internet Information Server (IIS) 5.0:
    1. Haga clic en Inicio, haga clic en configuración y, a continuación, haga clic en Panel de Control.
    2. Haga doble clic en Herramientas administrativasy, a continuación, haga doble clic en Administración de equipos.
    3. En el panel izquierdo de la ventana Administración de equipos, expanda servicios y aplicacionesy, a continuación, haga clic para seleccionar Servicios.
    4. En el panel derecho de la ventana Administración de equipos, desplácese por la lista de servicios en la columna nombre .
    5. Desplácese hasta el servicio Programador de tareas .
    6. Compruebe que estado indica iniciado. Si no se ha iniciado el servicio, haga clic derecho en el servicio Programador de tareas y haga clic en Iniciar.
    7. Compruebe que el Tipo de inicio indica automáticas. Si no se establece el Tipo de inicio a automático, haga clic en el servicio Programador de tareas y, a continuación, haga clic en Propiedades. La ventana nombreDeServicio aparece con la ficha General seleccionada. Tenga en cuenta que puede hacer clic en las otras fichas en la parte superior de la ventana para ver otras opciones. Haga clic en la flecha desplegable situada junto a tipo de inicioy, a continuación, seleccione automático.
    8. Haga clic en Aceptar.
    9. Para salir, cierre la ventana Administración de equipos.

Crear el archivo de correo electrónico

  1. Abra el Bloc de notas. Para ello, haga clic en Inicio, haga clic en Ejecutar, escriba NOTEPADy, a continuación, haga clic en Aceptar.
  2. En el Bloc de notas, pegue las líneas siguientes:
    <p>This is line 1.</p>
    <p>This is line 2.</p>
  3. En el Bloc de notas, haga clic en el menú archivo , haga clic en Guardar como, escriba C:\Mailout.txt en el cuadro de texto nombre de archivo y, a continuación, haga clic en Aceptar.
  4. Para salir, cierre el Bloc de notas.

Crear la secuencia de comandos WSH

  1. Abra el Bloc de notas. Para ello, haga clic en Inicio, haga clic en Ejecutar, escriba NOTEPADy, a continuación, haga clic en Aceptar.
  2. Pegue las líneas siguientes en el Bloc de notas:Nota: debe especificar una dirección de correo electrónico válida. Para ello, personalizar el remitente y el receptor cambiando el valor de las variables strFrom y strTo en el código siguiente:
    '--------------------------------------------------------------------
    '
    ' Mailout using CDONTS.NewMail
    '
    '--------------------------------------------------------------------

    ' Declare all variables.
    Option Explicit
    Dim objSendMail
    Dim strTo, strFrom
    Dim strSubject, strBody

    ' Mail constants (some are for reference).
    Const CdoBodyFormatHTML = 0 ' Body property is HTML
    Const CdoBodyFormatText = 1 ' Body property is plain text (default)
    Const CdoMailFormatMime = 0 ' NewMail object is in MIME format
    Const CdoMailFormatText = 1 ' NewMail object is plain text (default)
    Const CdoLow = 0 ' Low importance
    Const CdoNormal = 1 ' Normal importance (default)
    Const CdoHigh = 2 ' High importance

    strFrom = "someone@microsoft.com" ' Change to your e-mail address.
    strTo = "someone@microsoft.com" ' Change to the recipient address.
    strSubject = "Test Message" ' Change to your subject.

    ' This line calls the ReadFile() function to read the page contents.
    strBody = ReadFile("C:\MAILOUT.TXT")

    ' This line calls the MakePage() function to format the page as HTML.
    strBody = MakePage(strSubject,strBody)

    ' The following section creates the mail object and sends the mail.
    Set objSendMail = CreateObject("CDONTS.NewMail")
    objSendMail.From = strFrom
    objSendMail.To = strTo
    objSendMail.Subject = strSubject & " (" & Date() & ")"
    objSendMail.Body = strBody

    objSendMail.BodyFormat = CdoBodyFormatHTML
    objSendMail.MailFormat = CdoMailFormatMime
    objSendMail.Importance = CdoNormal

    objSendMail.Send
    Set objSendMail = Nothing

    ' This function returns a properly formatted HTML page.
    Function MakePage(txtSubject, txtBody)
    Dim txtTemp
    txtTemp = "<HTML>" & vbCrLf
    txtTemp = txtTemp & "<HEAD><TITLE>"
    txtTemp = txtTemp & txtSubject
    txtTemp = txtTemp & "</TITLE></HEAD>" & vbCrLf
    txtTemp = txtTemp & "<BODY>" & vbCrLf
    txtTemp = txtTemp & "<H2>" & txtSubject & "</H2>" & vbCrLf
    txtTemp = txtTemp & txtBody & vbCrLf
    txtTemp = txtTemp & "</BODY>" & vbCrLf
    txtTemp = txtTemp & "</HTML>"
    MakePage = txtTemp
    End Function

    ' This function opens a file and returns the contents of the file.
    Function ReadFile(txtFile)
    Dim txtTemp, objFS, objFL
    Set objFS = CreateObject("Scripting.FileSystemObject")
    Set objFL = objFS.OpenTextFile(txtFile)
    Do While Not objFL.AtEndOfStream
    txtTemp = txtTemp & objFL.ReadLine
    txtTemp = txtTemp & vbCrLf
    Loop
    objFL.Close
    Set objFS = Nothing
    ReadFile = txtTemp
    End Function
  3. En el Bloc de notas, haga clic en el menú archivo , haga clic en Guardar como, escriba C:\mailout.vbs en el cuadro de texto nombre de archivo y, a continuación, haga clic en Aceptar.
  4. Para salir, cierre el Bloc de notas.

Crear una tarea para programar el correo de salida para enviarse

  1. Haga clic en Inicio, haga clic en Ejecutar, escriba CMDy, a continuación, haga clic en Aceptar para abrir un símbolo del sistema.
  2. En la ventana de símbolo del sistema, escriba algo similar a los ejemplos siguientes:
    • La siguiente tarea ejecuta una vez a las 9:00 P.M.
      AT 9:00pm Cscript.exe C:\Mailout.vbs
    • Esta tarea se ejecuta todos los lunes a las 6:00 A.M.
      AT 6:00am /every:M Cscript.exe C:\Mailout.vbs
    • Esta tarea se ejecuta el primer día de cada mes a la 1:00 A.M.
      AT 1:00am /every:1 Cscript.exe C:\Mailout.vbs
      Nota: dependiendo de cuál de estos ejemplos que elija, el mensaje de correo electrónico se envía a la hora programada.

  3. Escriba EXIT para cerrar el símbolo del sistema.

Referencias


Para obtener más información acerca de las tecnologías de secuencias de comandos de Microsoft, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):