HOW TO: Aggiungere una dichiarazione di non responsabilità nei messaggi SMTP in uscita in Visual Basic Script

Per la versione di questo articolo relativa a Microsoft Visual Basic vedere:
317327 (il contenuto potrebbe essere in inglese).

CONTENUTO DELL'ATTIVITÀ

Sommario

In questo articolo viene illustrato come utilizzare un evento sink di trasporto SMTP per aggiungere una dichiarazione di non responsabilità ai messaggi di posta elettronica SMTP in uscita.

Torna all'inizio

Creazione dell'evento sink

Per creare un evento sink, incollare il seguente codice in un nuovo file e salvarlo con il nome EventSinkScript.vbs:
<SCRIPT LANGUAGE="VBScript">
Sub ISMTPOnArrival_OnArrival(ByVal Msg, EventStatus)
TextDisclaimer = vbCrLf & "DISCLAIMER:" & vbCrLf & "Sample Disclaimer added in a VBScript."
HTMLDisclaimer = "<p></p><p>DISCLAIMER:<br>Sample Disclaimer added in a VBScript."

If Msg.HTMLBody <> "" Then
'Search for the "</body>" tag and insert our discliamer before that tag.
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

Msg.TextBody = Msg.TextBody & vbCrLf & TextDisclaimer & vbCrLf
Else
Msg.TextBody = Msg.TextBody & vbCrLf & TextDisclaimer & vbCrLf
End If

'Commit the content changes to the transport ADO Stream object.
Msg.DataSource.Save ' Commit the changes into the transport Stream

pEventStatus = cdoRunNextSink
End Sub
</SCRIPT>
Torna all'inizio

Registrazione dell'evento sink

Per registrare l'evento sink, utilizzare il file Smtpreg.vbs, installato con l'SDK di Exchange. Da un prompt dei comandi passare alla cartella ...\Exchange SDK\SDK\Support\CDO\Scripts e digitare quanto segue, verificando che il percorso di EventSinkScript.vbs sia corretto:
cscript smtpreg.vbs /add 1 onarrival SMTPScriptingHost CDO.SS_SMTPOnArrivalSink "mail from=*@nomedominio.com"
cscript smtpreg.vbs /setprop 1 onarrival SMTPScriptingHost Sink ScriptName "C:\EventSinkScript.vbs"
Se il comando viene eseguito, si riceverà un messaggio di conferma generato dallo script.

Per annullare la registrazione dell'evento, digitare quanto segue:
cscript smtpreg.vbs /remove 1 OnArrival SMTPScriptingHost
Per ulteriori informazioni sulla registrazioni di eventi con Smtpreg.vbs, vedere l'argomento "Managing Event Bindings" nel seguente sito Web MSDN (informazioni in lingua inglese): Torna all'inizio

Verifica dell'evento sink

Per verificare il sink, inviare un messaggio di posta elettronica a un destinatario SMTP esterno alla propria organizzazione. Il destinatario dovrebbe ricevere un messaggio modificato a cui è stata aggiunta una dichiarazione di non responsabilità.

Nota Se per inviare il messaggio si utilizza un client MAPI come Microsoft Outlook, il destinatario non riceverà il messaggio modificato. Ciò avviene perché i messaggi inviati mediante MAPI non sono in formato SMTP quando il messaggio di posta elettronica genera l'evento di trasporto SMTP. Per tale motivo le modifiche apportate dal codice dell'evento non vengono conservate.

Torna all'inizio

Riferimenti

Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito (il contenuto potrebbe essere in inglese):
273233 PRB: CDOEX: Impossibile modificare i contenuti dei messaggi MAPI in un evento sink SMTP CDO
Torna all'inizio
Proprietà

ID articolo: 317680 - Ultima revisione: 24 ago 2005 - Revisione: 1

Feedback