Filtrage des Spam sous Outlook, SpamAssassin
Hors ligneEnirbas Le 22/03/2009 à 02:02 Profil de Enirbas Configuration de Enirbas

Bonjour,
Dans le but de filtrer les spam sous Outlook, j’ai écris en  VBScript un code qui fait intégrer SpamAssassin. Bref, ce que fais le code  est le suivant :
Lit le message de la boite de réception, l’écrit dans un fichier testme.txt input de SpamAssassin. Lit l’output de SpamAssassin (un fichier assassinated.txt), s’il trouve le flag « X-Spam-Status: Yes » il ajoute  *****SPAM***** au sujet de l’e-mail.
Ce code crée aussi un dossier Spam, mais je n’arrive pas encore à y déplacer les e-mails marqués comme des spams.
Mon but maintenant est de créer un bouton dans outlook qui permet d’exécuter mon code.  
Voilà le code :
Set mapisession=CreateObject("MAPI.Session")
mapisession.Logon
Set Folder=mapisession.GetDefaultFolder("1")
Set spamfolder=Folder.Folders.Add("Spam")
Set WshShell = CreateObject("WScript.Shell")
'MsgBox Folder.Name
Set AllMsgs=Folder.Messages
Set fs=CreateObject("Scripting.FileSystemObject")

For Each Item In AllMsgs
     'Msg=item.Fields(&H7D001E) & Item.Text
     'MsgBox Msg
     fs.CreateTextFile "c:\Program Files\SpamAssassin\testme.txt"
     Set file=fs.GetFile("c:\Program Files\SpamAssassin\testme.txt")
     Set ts=file.OpenAsTextStream(2,-2)
     ts.Write Msg
     ts.Close
     WshShell.Run """c:\Program Files\SpamAssassin\spam.bat""", 7, True
     Set file=fs.OpenTextFile("C:\Program Files\SpamAssassin\assassinated.txt" , 1 , True)
     Do While Not file.AtEndOfStream
          Msg1=file.ReadLine
          val=InStr(Msg1,"X-Spam-Status: Yes")
     Loop
     ts.Close
     If Int(val)<> 0 Then
           'MsgBox Item.Subject
           'MsgBox "Spam Found"
           Item.Subject = "*****SPAM*****" & Item.Subject
         Item.Update
     End If
          
Next

mapisession.Logoff
Set mapisession = Nothing
Set AllMsgs = Nothing
Set Folder = Nothing
  Est-ce que quelqu’un peut-il  m’aider à déplacer les e-mail dans le dossier créé et d’ajouter le bouton de l’exécution. D’après ce que j’ai vu apparemment il me fallait traduire mon code en VB et le mettre dans une macro. J’ai déjà résolu le problème de signature numérique.
Merci  d’avance.  
Note: La version d'Outlook que j'utilise est 2007
Vous avez résolu votre problème avec VIC ? Faites-le savoir sur les réseaux sociaux !
Vulgarisation-informatique.com
Cours en informatique & tutoriels