Intercepter les messages Outlook

cs_kharrat Messages postés 71 Date d'inscription mercredi 15 novembre 2000 Statut Membre Dernière intervention 29 mars 2007 - 23 mai 2006 à 12:42
MAXIMO71 Messages postés 46 Date d'inscription samedi 25 mars 2006 Statut Membre Dernière intervention 7 juin 2007 - 27 mai 2006 à 10:45
Salut,

Je développe une Appli ACCESS qui doit envoyer des mails. Pour ce faire, j'ai écrit une procédure qui exploite l'API d'Outlook (voir ci-dessous).

La procédure marche à merveille ! Mais Outlook émet des boîtes de dialogue de sécurité du style:
"Un programme essaie d'accéder aux adresses de messagerie enregistrées dans Outlook. L'autorisez-vous à poursuivre?"

Je souhaite intercepter ces boîtes de dialogue pour les gérer automatiquement dans mon code (i.e. autoriser l'appli à émettre le mail) pour ne pas surcharger l'utilisateur.

Question :
1. Est-ce possible ?
2. Si oui, comment faire ? Quelles sont les méthodes et propriétés à utiliser ?
3. Est-ce souhaitable ?

Merci,
Kharrat

'######### procédure d'envoie de mails

Sub EnvoyerMailMSOLE(strAdresseMail As String, strSujet As String, strMessage As String)
'nom : EnvoyerMailMSOLE
'but : alternative à la procédure précédente en exploitant l'API outlook
'param1 : strAdresseMail = mail du destinataire
'param2 : strSujet = sujet d message
'param3 : strMessage = corps du texte
'hist : 22/05/2006 ; AE ; Création
'rem1: cette procédure est inspirée de "Applications pour MS Access" de Hervé Hinisan


    On Error GoTo errEnvoyerMailMSOLE
   
    Dim olApp As Outlook.Application
    Dim miEmail As Outlook.MailItem
    Dim rcDest As Outlook.Recipient
   
    'initialiser un objet outlook
    Set olApp = CreateObject("Outlook.Application")
   
    'créer le message
    Set miEmail = olApp.CreateItem(olMailItem)
   
    'renseigner le message
    With miEmail
        'destinataire
        Set rcDest = .Recipients.Add(strAdresseMail)
        rcDest.Type = olTo
       
        'sujet et corps du text
        .Subject = strSujet
        .Body = strMessage
       
        'afficher le message: décommenter la ligne ci-dessous pour
        'afficher le message dans outlook
        '.Display
       
        'envoie: décommenter la ligne ci-dessous pour
        'envoyer le message
        .Send
    End With
   
    Set miEmail = Nothing
    Set olApp = Nothing
   
    Exit Sub
   
errEnvoyerMailMSOLE:
    MsgBox "Erreur " & Err.Number & ": " & Err.Description
   
End Sub

3 réponses

cs_vpoyo Messages postés 363 Date d'inscription vendredi 14 février 2003 Statut Membre Dernière intervention 20 avril 2010 6
23 mai 2006 à 18:00
A mon avis ca va pas être possible, sinon n'importe quelle application pourrait détourner ta messagerie si c'était si simple, non ?
A moins qu'il soit possible d'enregistrer au niveau de l'application que telle application à le droit. mais ca se fera pas via l'api com à mon avis.

sinon si tu as accès à un serveur smtp pourquoi passer par outlook pour envoyer tes mails ? autant lui transmettre directement
0
cs_kharrat Messages postés 71 Date d'inscription mercredi 15 novembre 2000 Statut Membre Dernière intervention 29 mars 2007
23 mai 2006 à 19:38
Décidément, nous avons une intense correspondance épistollaire aujourd'hui  !

Merci. Je me disais bien qu'il n'est pas possible de by-passer les alertes envoyées par Outlook.

Pour le serveur smtp, je ne sais pas ce que c'est ; et pour Outlook, c'est dans le cahier des charges... et j'ai trouvé une fonction qui fait l'affaire... alors, pour une fois qu'il y a un truc qui marche sans que je me tue à comprendre tous les forums du net pour m'apercevoir qu'au fond personne n'en sait guère plus que moi... JE VAIS PAS ME PLAINDRE !!!!

ps : j'ai laissé tombé l'hitoire des click dans les tables pour l'instant. Je verrai plus tard si je trouve une solution... mais je crois que ça va se terminer par un bouton et une bonne requette SQL groupe by !
0
MAXIMO71 Messages postés 46 Date d'inscription samedi 25 mars 2006 Statut Membre Dernière intervention 7 juin 2007
27 mai 2006 à 10:45
Si tu recherche sur ce site tu devrais trouver un code qui ne gére pas
les boite de dialogue de Outlook mais qui te donne un code qui renvois
des touches à l'ouverture des boites ce qui évite à l'utilisateur
d'avoir à agir. Cette question a dejà été posée, je ne te le dis pas
pour te faire la moral mais pour t'aider dans tes recherches si tu as
toujours besoin d'aide.

MAXIMO71
PS Si la réponse vous satistait
pensez à la valider
0
Rejoignez-nous