WD - Voici la solution pour attacher une pièce jointe via Mailto
1 réponse
Val
Bonjour,
Il y a quelques jours et dans le cadre d'une application client, j'ai été
confronté au fait qu'il n'est pas possible, dans la ligne de commande de
Mailto et au même titre que body ou subject, de définir un fichier à joindre
au message en pièce jointe.
Bien sur, il est possible d'utiliser les fonctions emails de WD pour
résoudre ce problème mais non ... mon client voulait que les messages soient
placés dans son lecteur de courrier et envoyés à partir de celui-ci.
Donc, comme beaucoup d'autres développeurs, j'ai été confronté à ce
problème.
En fait, avec Windev, on peut y arriver très facilement par le biais de
"EnvoieTouche" et ceci en quelques lignes de code seulement.
Il suffit, en effet, d'envoyer les caractères qui permettent le déroulage
des menus du lecteur de courrier ... et hop ça roule.
Voici par exemple le code qui marche parfaitement bien pour "Outlook Express
v6" sous Windows XP.
***********************
AdresseDestinataire est une chaîne
NomDuFichierAJoindre est une chaîne
AdresseDestinataire="contact@mondomaine.com"
NomDuFichierAJoindre="C:\Windows\Vent de prairie.bmp"
LanceAppliAssociée("mailto:"+AdresseDestinataire)
Multitâche(100)
EnvoieTouche("%IP"+NomDuFichierAJoindre+"%J")
***********************
Le paramètre "%IP" déclencle le déroulage du menu "Insertion", "Pièce
jointe" et le paramètre "%J" simule le clic sur le bouton "Joindre".
Voilà, c'est tout simple.
Pour que le code fonctionne avec d'autres lecteurs de courrier, il suffit de
vérifier que les touches à simuler sont les mêmes et de les changer si
besoin.
Attention quand même à une chose: la commande "EnvoieTouche" met en alerte
certains logiciels de sécurité (Kaspersky par exemple), lesquels considèrent
cette action comme celle d'un programme invasif.
Donc, si vous utilisez ce code dans une application client, prévenez le
quand même.
Sous Windows Vista et si l'UAC est activé, EnvoieTouche peut également ne
pas fonctionner correctement.