Empecher message avertissement Outlook lors de l'envoi de mail automatique en vb

Signaler
Messages postés
21
Date d'inscription
jeudi 11 mars 2004
Statut
Membre
Dernière intervention
18 septembre 2010
-
 mm -
Bonjour a tous,

j'ai un petit problème lors de l'envoi automatique d'un mail en vb access. Le mail s'envoie bien mais il y a un message d'avertissement d'outlook qui s'ouvre :

Un programme tente d'envoyer automatiquement des courriers en votre nom. (Virus) etc...

Est-ce que quelqu'un aurait une solution pour empêcher l'affichage de ce message.

Merci par avance.
 
A voir également:

23 réponses

Messages postés
797
Date d'inscription
mardi 7 juin 2005
Statut
Membre
Dernière intervention
23 février 2011
5
Il n'y a pas de solutions, tu es obligé d'avoir ce message (d'un autre côté, c'est logique : c'est sensé être une protection d'Outlook, si on peut l'enlever, bonjour la sécurité ^^). J'ai fouillé entre autre sur le site de Microsoft, je n'ai plus le lien, mais dans l'aide d'Outlook 2003, il est dit que cette option ne peut être désactivée.

Tu as donc 2 choix : Je suppose que tu génère tes mails et que tu les envois avec un .send

Donc soit tu fais .send et dans ce cas, faut attendre les 5 secondes et valider le message,
soit tu n'envois pas le mail et tu fais un .display pour faire apparaître ton mail à l'écran, charge à l'utilisateur d'appuyer sur Envoyer (je préfère cette solution, mes utilisateurs étaient convaincus que je tentais de leur refiler un virus avec la première solution, donc il faisait non à chaque fois )


Molenn
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
68
Salut
Cela fait partie des options de Outlook "Envoyer un message lorsqu'un autre logiciel tente d'envoyer un mail"
Suffit de supprimer cette surveillance dans Outlook ... à tes risques et périls !

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
21
Date d'inscription
jeudi 11 mars 2004
Statut
Membre
Dernière intervention
18 septembre 2010

Salut,

Merci pour vos réponses, Par contre est-ce qu'il n'existe pas un autre moyen d'envoyer un mail, une autre méthode qu'un .send pour justement éviter d'avoir un message de ce genre?

Filip
Messages postés
168
Date d'inscription
vendredi 9 janvier 2004
Statut
Membre
Dernière intervention
28 juillet 2009
1
Oui c'est tout à fait possible d'envoyer un mail sans passer par Outlook.   Va faire un tour du côté de CDONTS.DLL.   Attention : il faut que tu puisses paramétrer le nom du serveur d'email et son port et, en outre, il faut que ton PC (ton IP adress) soit connue et acceptée sur le mail serveur comme étant autorisé à envoyer des emails.

Beaucoup de conditions qui font que c'est une solution valable si tu possèdes ton propre mailserver.

Voici un début de code:

Dim oMail As Object

   Set oMail = CreateObject("CDO.Message")

   oMail.From = "Me <me@yahoo.com"
  
   With oMail.configuration.Fields


      .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = cdoSendUsingPort
      .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = cMailHost
      .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = cMailPort

[...]

C'est un début de code.   Si tu remplies toutes les conditions que j'ai indiqué ci-dessous fais-moi signe et je prendrais le temps de te fournir un truc plus fournis.

Christophe
Messages postés
21
Date d'inscription
jeudi 11 mars 2004
Statut
Membre
Dernière intervention
18 septembre 2010

Salut,


J'utilise un serveur Microsoft Exchange et le port je ne sais pas du tout. Est-ce que tu pourrais m'expliquer un peu plus dans le détail car je ne connais pas du tout ce que tu m'as dit auparavant. (CDONTS.DLL).
Peut tu m'aider s'il-te-plait?

Merci d'avance.
Messages postés
168
Date d'inscription
vendredi 9 janvier 2004
Statut
Membre
Dernière intervention
28 juillet 2009
1
Bonjour

J'ai lancé une petite recherche sur Google; voici un lien vers un forum de microsoft http://www.forum-microsoft.org/post426424.html

Set objEmail = CreateObject("CDO.Message")
objEmail.From = "moi@mon_mail.fr"
objEmail.To = "mon_destinataire@son_mail.fr"
objEmail.Subject = "Adresse IP du serveur"
objEmail.Textbody = " Bonjour, test mail, pas virus !"
objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2

Ici, tu dois donner le nom du serveur de mail c-à-d le nom de la machine où Exchange server est installé.    Dans ma société, c'est le département IT qui me fournit cette info.   Je suppose (=jamais essayé) que si Exchange server est installé sur ton PC que tu pourrais écrire "localhost"

objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "FQDN_mon_serveur_smtp"

Normallement le port par défaut pour l'email, c'est le port 25.   Si ce port à été modifié par ton service IT; ils doivent t'indiquer le numéro du port.

objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25

Je ne suis pas sûr que les trois lignes ci-dessous sont obligatoires : normallement sur ton réseau d'entreprise, à défaut de spécifier les lignes ci-dessous, il reconnaît l'utilisateur connecté.

objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusername") = "moi"
objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "mon_mot-de_pase"
objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 2
objEmail.Configuration.Fields.Update
objEmail.Send

Et ne pas oublier

Set objEmail = Nothing

Christophe
Messages postés
21
Date d'inscription
jeudi 11 mars 2004
Statut
Membre
Dernière intervention
18 septembre 2010

Merci pour ton aide.

J'ai testé le code et j'ai un petit problème : j'ai un message d'erreur :

Le message n'a pas pu être envoyé vers le serveur SMTP. Le code d'erreur de transport était 0x800ccc15. La réponse du serveur était not available.

je pense qu'il y a un problème avec :

objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "FQDN_mon_serveur_smtp" 

Mais je ne sais pas comment le résoudre.
Messages postés
168
Date d'inscription
vendredi 9 janvier 2004
Statut
Membre
Dernière intervention
28 juillet 2009
1
Je n'ai peut-être pas été clair.   J'écrivais ceci dans mon précédent post.

Ici, tu dois donner le nom du serveur de mail c-à-d le nom de la machine où Exchange server est installé.    Dans ma société, c'est le département IT qui me fournit cette info.   Je suppose (=jamais essayé) que si Exchange server est installé sur ton PC que tu pourrais écrire "localhost"

objEmail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "FQDN_mon_serveur_smtp"

Et donc le mot FQDN_mon_serveur_smtp DOIT ETRE remplacé par le nom de ton serveur à toi.     Ce nom est le nom de la machine où, sur ton réseau, Microsoft Exchange est installé.  

Une fois encore ce nom doit t'être communiqué par ton département IT si tu développes pour une société sinon, à la maison, tu dois avoir une telle installation.

Tout autre chose : il y a quelques années, j'ai installé un programme nommé ASPeMail (tu le trouveras aisément sur internet) chez un client.    Ce composant n'est rien d'autre qu'un ActiveX qui permet d'envoyer des mails et donc aussi via VB.   Ensuite, une fois installé sur ton PC, tu dois installer un soft type mailserver.   J'en avais trouvé un après de très longues recherches mais j'ai oublié le nom; sorry.

Bonne chance.

Christophe
Messages postés
21
Date d'inscription
jeudi 11 mars 2004
Statut
Membre
Dernière intervention
18 septembre 2010

Je sais mais justement le problème c'est que j'ai remplacé le mot "FQDN_mon_serveur_smtp" par l'adresse IP du serveur et même par le nom du serveur Exchange mais j'obtiens le message d'erreur que je t'ai mis dans le précédent post. 
Et j'ai bien obtenu l'adresse IP et le nom du serveur par le département IT.
Le problème c'est que je ne sais pas pourquoi il me met ce message la.

 Message d'erreur :Le message n'a pas pu être envoyé vers le serveur SMTP. Le code d'erreur de transport était 0x800ccc15. La réponse du serveur était not available.
Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
25
 Bonjour à tous

J'utilise le code ci-dessous, en production, sans problème et sans send d'alerte.

'------------------
'Paramètres du Mail
'------------------
   Const Destinataires = "[mailto:xxxxx@yyy.fr xxxxx@yyy.fr]"
   Const Emetteur = "[mailto:moi@yyy.fr moi@yyy.fr]"
   Const cdoSendUsingPort = 2
'-------------------------------------------
'Adresse IP ou smtp du serveur de messagerie
'-------------------------------------------
   Const strSmartHost = "smtp.zzzzz.fr"   '  ou IP "172.17.xx.y"
  
    Dim iMsg, iConf
    'Create the message object.
    Set iMsg = CreateObject("CDO.Message")
    'Create the configuration object.
    Set iConf = iMsg.Configuration
    'Set the fields of the configuration object to send by using SMTP through port 25.
    With iConf.Fields
         .item("http://schemas.microsoft.com/cdo/configuration/sendusing") = cdoSendUsingPort
         .item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = strSmartHost
         .Update
    End With
    'Set the To, From, Subject, and Body properties of the message.
    With iMsg
         .To = Destinataires
         .From = Emetteur
         .Subject = Sujet
         .TextBody = Corps
         .AddAttachment RepOut
         .Send
    End With
    Set iMsg = Nothing
    Set iConf = Nothing

jean-marc
Messages postés
1
Date d'inscription
mardi 9 janvier 2007
Statut
Membre
Dernière intervention
12 janvier 2007

Avec outllok 2003, on ne peut pas désactiver ce message d'avertissement.Cependant il est possible d'envoyer un mail automatiquement par CDO, aller à la page http://www.faqoe.com/rep/cs.php3, j'ai utilisé la solution 2 qui fonctionnee très bien.
Messages postés
21
Date d'inscription
jeudi 11 mars 2004
Statut
Membre
Dernière intervention
18 septembre 2010

Tout d'abord merci pour votre aide.


J'ai essayé vos 2 méthodes et j'ai toujours le meme message d'erreur qui s'affiche :




Le message n'a pas pu être envoyé vers le serveur SMTP. Le code d'erreur de transport était 0x800ccc15. La réponse du serveur était not available.




Je ne sais pas pourquoi j'ai cette erreur. Si quelqu'un sait ou a déjà eu le même problème? Merci d'avance.
Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
25
 Re,

 .item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = strSmartHost

strSmartHost peut correspondre à :
- "smtp.wanadoo.fr" 
- "172.34.172.34"  
- "proxy-mon_boulot...."

Attention aux contenus des subject et textbody qui posent souvent problème.
Il faut convertir les blanks par %20% 

Pouvez-vous mettre votre bout de code d'essai, celà permettra peut-être d'y déceler une erreur.

jean-marc
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
22
Euh...

Je m'abstiendrai do donner le code qui va avec, car je n'aime pas les dangers entraînés par les sous-classements !
Mais voilà le chemin logique, si vous y tenez : sous-classer ===>> intercepter ===> Transformer
Gaffe : si vous vous y amusez : pas de END, hein ? et pas d'interruption par le stop de l'IDE, non plus !
Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
25
 Re,

Bonjour Jacques,
Evidemment, il ne faut pas mettre d'adresses Ip ou nominales exactes.
Simplement, comme moi, mettre des xxx, yyy ou ce qu'il veut !!!

Mon propos est que certains forumers font un copier/coller du code
proposé, le modifie (ou ne le modifie pas, d'ailleurs) et le code ne fonctionne pas !!!
D'où mon ajout de subject, textbody, htmltextbody,addAttachement...etc...
Une erreur sur les autres variables que "strSmartHost" provoque aussi une erreur sur le .Send
D'autre part, concernant les mails, une méthode, "ok" at home, ne fonctionnera pas obligatoirement
au boulot (et vice-versa).
Selon les contraintes (OS et client), j'utiliserai cdo, mailto, blat, ...
On en revient à l'illustrissime "moteur de recherche".

jean-marc
Messages postés
21
Date d'inscription
jeudi 11 mars 2004
Statut
Membre
Dernière intervention
18 septembre 2010

Voila le code :

With CreateObject("CDO.Message")
.From = "[mailto:nom@domaine.fr nom@domaine.fr]"
.To = "[mailto:nom@domaine.fr nom@domaine.fr]"
.Subject = "Sujet du message"
.TextBody = "Texte du Message." & vbNewLine & "Signature"
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "10.XX.XXX.XXX"
.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
.Configuration.Fields.Update
.Send
End With

Et le programme bloque sur le .send.
Avec l'erreur :
Le message n'a pas pu être envoyé vers le serveur SMTP. Le code d'erreur de transport était 0x800ccc15. La réponse du serveur était not available.
Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
25
 Re,

En reprenant le code (universellement utilisé) que j'ai proposé, mettre:
.Subject = "TEST"         car "Sujet du message" provoque une erreur de synthaxe. voir %20%

Mais l'erreur ne doit pas venir de là !!!
le send parle de lui-même
Environnement:  particulier ou entreprise ???
Et une recherche sur "0x800ccc15" n'a rien donné ?

jean-marc
Messages postés
21
Date d'inscription
jeudi 11 mars 2004
Statut
Membre
Dernière intervention
18 septembre 2010

C'est un environnement d'entreprise.
J'utilise outlook 2002 et un serveur Microsoft Exchange.
Je ne sais pas si ca peut vous aider.
Messages postés
21
Date d'inscription
jeudi 11 mars 2004
Statut
Membre
Dernière intervention
18 septembre 2010

Petite question : est-ce que c'est possible que le proxy pourrait provoquer l'erreur ou est-ce qu'il n'y a aucun rapport?
Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
25
Re,

Recherche Google sur "0x800ccc15", il y en a pour tous les gouts.

Si proxy, voir avec l'admin messagerie de votre entreprise.

Const strSmartHost = "proxy.titi.TOTO.fr"   ' exemple

jean-marc