Vous êtes actuellement hors ligne, en attente de reconnexion à Internet.

COMMENT FAIRE : Ajout d'une exclusion de responsabilité à des messages SMTP sortants dans Visual Basic

Ancien nº de publication de cet article : F317327
Pour obtenir la version script Microsoft Visual Basic de cet article, consultez l'article 317680.

Contenu de cette tâche

Résumé
Cet article explique en détail la procédure d'utilisation d'un récepteur d'événements de transport SMTP pour ajouter une exclusion de responsabilité à des messages SMTP sortants.

Début de page

Création du récepteur d'événements

  1. Créez un nouveau fichier DLL ActiveX Microsoft Visual Basic. Nommez le projet SMTPEventSink et nommez le module Exclusion.
  2. Dans les références du projet, ajoutez Bibliothèque Microsoft CDO pour Exchange 2000 et Bibliothèque Server Extension Objects COM.
  3. Collez le code suivant dans le module :
    Dim TextDisclaimer As StringDim HTMLDisclaimer As StringImplements IEventIsCacheableImplements CDO.ISMTPOnArrivalPrivate Sub IEventIsCacheable_IsCacheable()    ' Renvoie uniquement S_OK.End SubPrivate Sub Class_Initialize()  'A FAIRE : remplacez l'exemple de texte d'exclusion de responsabilité par votre propre texte.  TextDisclaimer = vbCrLf & "DISCLAIMER:" & vbCrLf & "Sample Discliamer Text."  HTMLDisclaimer = "<p></p><p>DISCLAIMER:<br>Sample Disclaimer Text"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                'Recherchez la balise "</body>" et insérez notre exclusion de responsabilité avant cette balise.        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        'Validez les modifications apportées au contenu dans l'objet de transport ADO Stream.    Msg.DataSource.Save    EventStatus = cdoRunNextSinkEnd Sub
  4. Remplacez l'exemple de texte d'exclusion de responsabilité par votre propre texte, puis créez la DLL.

Inscription du récepteur d'événements

Pour inscrire votre récepteur d'événements, utilisez le fichier Smtpreg.vbs, lequel est installé avec le Kit de développement Microsoft Exchange (SDK). À partir d'une invite de commande, recherchez le dossier « ...\Exchange SDK\SDK\Support\CDO\Scripts » et tapez la commande suivante :
cscript smtpreg.vbs /add 1 OnArrival SMTPDisclaimer SMTPEventSink.Disclaimer "mail from=*"
Si cette commande réussit, vous recevez un message généré par le script qui signale la réussite.

Pour annuler l'inscription de cet événement, tapez la commande suivante :
cscript smtpreg.vbs /remove 1 OnArrival SMTPDisclaimer
Pour plus d'informations sur l'inscription d'événements à l'aide de Smtpreg.vbs, consultez la rubrique « Managing Event Bindings » sur la gestion de la liaison d'événements du site Web MSDN à l'adresse suivante :Début de page

Test du récepteur d'événements

Pour tester votre récepteur d'événements, envoyez un message électronique à un destinataire SMTP qui est externe à votre organisation. Le destinataire doit recevoir un message modifié dans lequel l'exclusion de responsabilité est ajoutée à la fin du message.

Remarque : Si vous utilisez un client MAPI tel que Microsoft Outlook pour envoyer le message électronique, le destinataire ne reçoit pas un message modifié. En effet, les messages soumis par le biais de MAPI ne sont pas au format SMTP lorsque le message déclenche l'événement de transport SMTP. Par conséquent, les modifications apportées par le code de l'événement ne sont pas conservées.

Début de page
Propriétés

ID d'article : 317327 - Dernière mise à jour : 08/23/2005 19:13:31 - Révision : 5.1

  • Microsoft Exchange Server 2000 Service Pack 1
  • Microsoft Exchange 2000 Server Service Pack 2
  • Collaboration Data Objects for Exchange 2000
  • Microsoft Collaboration Data Objects 2.0
  • kbhowto kbhowtomaster KB317327
Commentaires