Estás trabajando sin conexión, espera a que vuelva la conexión a Internet

Cómo agregar una renuncia a los mensajes SMTP de salida en Visual Basic

Para obtener una versión para Microsoft Visual Basic Scripting Edition de este artículo, consulte 317680.
INTRODUCCIÓN
Este artículo paso a paso describe cómo utilizar un receptor de sucesos de transporte SMTP para agregar una renuncia a los mensajes de correo electrónico SMTP.

Crear el receptor de sucesos

  1. Cree una DLL ActiveX de Microsoft Visual Basic. Asigne el nombre SMTPEventSink al proyecto y, a continuación, llame al módulo Disclaimer.
  2. En Referencias del proyecto, agregue Microsoft CDO for Exchange 2000 Library y, a continuación, agregue Server Extension Objects COM Library.
  3. Ponga en el módulo el código siguiente:
     Dim TextDisclaimer As String Dim HTMLDisclaimer As StringImplements IEventIsCacheable Implements CDO.ISMTPOnArrivalPrivate Sub IEventIsCacheable_IsCacheable() 'Simplemente devuelve S_OK. End SubPrivate Sub Class_Initialize() 'TODO: Reemplace el texto de la renuncia de ejemplo con el suyo propio. TextDisclaimer = vbCrLf & "RENUNCIA:" & vbCrLf & "Texto de la renuncia de ejemplo." HTMLDisclaimer = "<p></p><p>RENUNCIA:<br>Texto de la renuncia de ejemplo" End SubPrivate Sub ISMTPOnArrival_OnArrival(ByVal Msg As CDO.IMessage, EventStatus As CDO.CdoEventStatus) If Msg.HTMLBody <> "" Then Dim szPartI As String Dim szPartII As String Dim pos As Integer                'Buscar la etiqueta "</body>" e insertar la renuncia antes de la etiqueta. pos = InStr(1, Msg.HTMLBody, "</body>", vbTextCompare) szPartI = Left(Msg.HTMLBody, pos - 1) szPartII = Right(Msg.HTMLBody, Len(Msg.HTMLBody) - (pos - 1)) Msg.HTMLBody = szPartI + HTMLDisclaimer + szPartII End If    If Msg.TextBody <> "" Then Msg.TextBody = Msg.TextBody & vbCrLf & TextDisclaimer & vbCrLf End If        'Confirmar los cambios del contenido en el objeto ADO Stream de transporte. Msg.DataSource.Save EventStatus = cdoRunNextSink End Sub 
  4. Reemplace el texto de la renuncia de ejemplo con su propio texto y, a continuación, genere la DLL.

Registrar el receptor de sucesos

Para registrar el receptor de sucesos, utilice el archivo Smtpreg.vbs que se instala con el Kit de desarrollo de software (SDK) de Exchange.
  1. En el símbolo del sistema, busque la carpeta \Exchange SDK\SDK\Support\CDO\Scripts y, a continuación, escriba lo siguiente: cscript smtpreg.vbs /add 1 OnArrival SMTPDisclaimer SMTPEventSink.Disclaimer "mail from=*@aquí-va-su-dominio.com"

    Si este comando se ejecuta correctamente, aparecerá un mensaje de confirmación generado por la secuencia de comandos.
  2. Para eliminar este suceso del Registro, escriba lo siguiente: cscript smtpreg.vbs /remove 1 OnArrival SMTPDisclaimer
Para obtener información adicional sobre cómo administrar enlaces de sucesos, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):

Probar el receptor de sucesos

Para probar el receptor de sucesos, envíe un mensaje de correo electrónico a un destinatario SMTP externo a su organización. El destinatario recibe un mensaje modificado con el texto de la renuncia agregada al final del mensaje.

Nota: si utiliza un cliente MAPI, como Microsoft Outlook, para enviar el mensaje de correo electrónico, el destinatario no recibe un mensaje de correo electrónico modificado. Esto se debe a que el mensaje que se envía con MAPI no está en un formato SMTP cuando desencadena el suceso de transporte SMTP. Por consiguiente, los cambios realizados en el código del suceso no se conservan.
Referencias
Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
273233 No se pueden cambiar los contenidos del mensaje MAPI en un receptor de sucesos SMTP de CDO
Propiedades

Id. de artículo: 317327 - Última revisión: 11/26/2007 02:00:00 - Revisión: 8.2

  • Microsoft Exchange Server 2003 Standard Edition
  • Microsoft Exchange Server 2003 Enterprise Edition
  • Microsoft Exchange 2000 Server Standard Edition
  • Collaboration Data Objects for Exchange 2000 6.0
  • Microsoft Collaboration Data Objects 2.0
  • kbhowtomaster KB317327
Comentarios