En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies pour vous proposer des contenus et services adaptés. Mentions légales.

SendMail // Envoi de mails doté d'un mode 'scriptable'

sendmail01.png sendmail02.png SendMail est multilingue mais ne possède actuellement que très peu de traductions :
  • Français (OK, référence)
  • Anglais (à contrôler)
  • Allemand (OK)
Si vous souhaitez compléter les fichiers existants ou ajouter de nouvelles traductions, rendez-vous sur la page des fichiers de langues.
français anglais allemand

Avec un tel nom, il n'est pas bien difficile d'imaginer la fonction principale de SendMail... Mais cet outil est bien plus qu'un simple logiciel d'envoi de mails !

Une des principales caractéristiques de SendMail est qu'il peut être utilisé soit en mode interface graphique, soit en mode script. Je suppose qu'il n'est pas utile que je m'étende sur le premier, le second nécessite en revanche quelques explications : SendMail est "scriptable", ce qui signifie que l'on peut aussi l'utiliser en mode "ligne de commande", grâce à une syntaxe complexe.

Il est par conséquent possible d'utiliser SendMail en complément d'autres outils qui permettent d'exécuter des traitements externes. C'est le cas de LanAlertCenter (que vous pouvez aussi trouver sur ce site) mais aussi de nombreux outils du commerce, dans divers domaines.

Codes erreurs (ErrorLevel) retournés lors de l'utilisation en mode ligne de commande :

0 : message envoyé avec succès
1 : erreur dans les paramètres passés par l'utilisateur
2 : erreur d'accès à l'ActiveDirectory
3 : erreur de destinataire (groupes vides)
4 : erreur de pièce jointe (introuvable)
5 : erreur d'envoi du message (OSSMTP)

Une autre particularité de cet outil est qu'il permet d'envoyer des mails soit à des destinataires désignés manuellement, soit aux membres de groupes globaux de l'ActiveDirectory. Cette dernière possibilité est pratique puisqu'elle peut ainsi éviter d'avoir recours à la création de listes de distribution.

Cet outil n'aurait pas été complet s'il n'avait pas permis à l'utilisateur de pouvoir joindre des fichiers, cette fonctionnalité est par conséquent présente !

Enfin, je tiens à préciser que SendMail utilise le composant OSSMTP développé par OstroSoft que je remercie vivement.

ATTENTION :

  • cet outil ne doit pas être utilisé pour effectuer du spam !
  • comme je le signale un peu plus haut, cet outil peut récupérer les membres des groupes de l'ActiveDirectory : pour profiter de cette fonctionnalité sur NT4, il est nécessaire d'installer la couche "ActiveDirectory for NT4" (aussi appelé DSClient)... voir http://support.microsoft.com/kb/288358. A noter qu'un message d'erreur apparaît au lancement de SendMail s'il n'arrive pas à joindre l'ActiveDirectory, mais ce message n'est pas bloquant.
     
  Télécharger ce logiciel (version installeur)
  Télécharger ce logiciel (version portable ZIP) Note importante aux utilisateurs des versions portables


Date de création : 21/02/2005 @ 14:26
Dernière modification : 06/07/2020 @ 18:32
Catégorie : - Aide à l'administration
Page lue 143324 fois


Réactions à cet article


Réaction n°33 

par   Patrick le 27/08/2008 @ 18:00

Bonjour,

Merci pour ce logiciel qui me permet d'automatiser des envois de mails dans un applicatif spécifique.

Toutefois j'ai un probléme pour les pièces jointes, si la PJ est inférieure à 7 Mo pas de problème, au dessus de cette taille le mail n'est pas réceptionné par le destinataire alors que tout semble s'être passé correctement.

Je suis en ORANGE.SMTP et j'ai l'option GIGA MAIL qui me permet d'échanger des fichiers jusquà  20 Mo , cela fonctionne correctement par OUTLOOK .

Merci pour votre réponse

Patrick

 

[réponse de damien, le 31/08/2008 à 10h30]
Vous êtes le premier à me rapporter ce problème que je n'ai pas constaté jusqu'alors. Vos tests entre Outlook et mon soft ont-ils été effectués avec le même contenu (corps du message et pièce jointe) ?

Il est possible que le problème vienne du composant que j'utilise (OSSMTP) mais j'en doute : il a depuis longtemps fait ses preuves. Cela peut par contre provenir de votre FAI qui considère peut-être le message comme un spam en voyant OSSMTP dans l'en-tête du mail ?

Je viens de faire quelques tests avec un fichier > 9Mo : il n'est pas arrivé sur mes boites Free car supérieur à la limite de taille imposée (mais j'ai reçu une notification du postmaster dans la boite de l'expéditeur). Un autre test vers une boite Yahoo s'est en revanche révélé positifs.

Donc RAS du côté du composant OSSMTP ou de mon soft... frown


Réaction n°32 

par Steph le 17/06/2008 @ 13:46

Bonjour,

Merci beaucoup pour votre sympathique logiciel.

J'avoue que j'ai quand même un petit soucis pour le faire fonctionner correctement: lorsque je l'utilise en mode graphique, pas de problèmes, l'envoi des mails se fait correctement.

Lorsque je le fais en mode ligne de commande depuis une fenêtre DOS, pas de problèmes non plus, les mails arrivent correctement à leur destinataire.

En revanche, lorsque j'essaie de l'intégrer à un script Perl, et que la même ligne de commande est passée en faisant un qx($ligne_de_commande), je n'ai aucun message d'erreur, sauf que l'envoi des mails ne se fait pas: ils n'arrivent jamais à leur destinataire.

C'est pareil lorsque je fais un exec($ligne_de_commande) ou un $tmp=`$ligne_de_commande`;

Avez-vous une idée de la raison de ce disfonctionnement ?

J'avoue que cela me rendrait un très grand service de pouvoir automatiser mes envois de mail et j'y arrive pas yyy

Merci d'avance pour votre aide,

                                                  Stéphane

 

[réponse de damien, le 17/06/2008 à 14:02]   Attention, cette réponse fait référence à une ancienne syntaxe de SendMail
Alors là, je n'en ai aucune idée : ne connaissant pas du tout Perl je suis bien incapable de vous aider... frown

Peut-être s'agit-il d'un problème de path ? Y a-t-il un moyen de voir si l'exe s'est bien lancé (gestionnaire de tâches, par exemple) ? Si vous lancez un autre exe que le mien, il se passe quelque chose ?

Si vous pouvez me donner des indications (package, script, etc.) pour monter rapidement un environnement qui me permette de tester ce mode de fonctionnement, je suis preneur... En d'autres termes, aidez-moi à vous aider ! biggrin

 

[réponse complémentaire de damien, le 17/06/2008 à 14h58]
Je viens tout juste d'installer ActivePerl (une version 5.8.8.822 dispo sur Clubic car impossible de télécharger depuis le site officiel) et de tester une ligne de commande toute simple :

     perl -e "exec 'sendmail /u:damien@dipisoft.com /t:test /m:message.txt'"

Eh ben ça fonctionne : j'ai bien reçu le message...

Es-tu sur que le fichier de configuration (sendmail.ini) a bien été configuré ?

 


Réaction n°31 

par   Romrik le 08/06/2008 @ 11:44

Bonjour
Cet utilitaire est très utile
Vous dites que le corps en html est prévu
Quand le serait-il ? fin d'année 2008 ? été 2008 ?

Cordialement


[réponse de damien, le 09/06/2008 à 15h00]

Non seulement c'est prévu mais cette fonctionnalité est quasiment prête. Il ne reste qu'à terminer les autres modifs en cours (authentification notamment).

Le problème est que j'ai pas mal d'autres choses en cours sur d'autres softs donc je ne me hasarderai pas à avancer une date... Peut-être le mois de juillet sera-t-il calme et me permettra d'avancer un peu ? Je l'espère. wink


Réaction n°30 

par Fabien le 08/04/2008 @ 13:46

Bonjour,

Serait-il envisageable de supporter des fichiers html pour alimenter le corps de mail dans une évolution prochaine ou cela restera-t-il réservé à des produits plus "lourds" ?


[réponse de damien, le 08/04/2008 à 15h56]
Non seulement c'est prévu, mais c'est même quasiment développé. De mémoire, il me restait encore quelques petites modifs et des tests à effectuer.

Ça fait un moment que je n'ai pas remis le nez dans cette appli, il va me falloir un peu de temps pour reprendre là où je m'étais arrêté... wink

Réaction n°29 

par   dweezil le 07/04/2008 @ 16:29
Bonjour,
j'utilise votre logiciel pour tester rapidement un serveur smtp, mais si il fonctionne correctement en local (envoi a partir de la machine ou est installer le serveur) il ne fonctionne pas lorsque j'envoie un mail a partir d'une autre machine du réseaux (aucun popup de confirmation) alors que le serveur smtp est bien accessible et que l'envoir de mail via telnet ou outlook fonctionne .... mais pourquoi donc :_(
cordialement


[réponse de damien, le 07/04/2008 à 19h02]
Rien dans l'appli ne peut expliquer le problème. Il faut donc chercher du côté de la config (l'adresse IP ou le nom DNS du serveur SMTP est peut-être erronée, tout simplement) ou du côté du firewall/antivirus (pc et serveur). Comme je l'ai déjà dit, certains de ces outils filtrent l'utilisation du port TCP 25 et seuls les logiciels "autorisés" peuvent l'utiliser...

Merci de m'informer des suites.

Réaction n°28 

par   vince le 07/02/2008 @ 14:14
Bonjour,

A la recherche d'un 'sendmail' pour windows, votre logiciel semble bien correspondre, félicitation.

Une petite suggestion pour l'utilisateur en ligne de commande que je suis : Serait il possible que le corps du message soit passé en paramettre directement, sans passer par un fichier ?


Vincent


[réponse de damien, le 07/02/2008 à 18h49]
Oui c'est possible, j'ajouterai cette option dans la prochaine version mais elle n'est pas prête de sortir... j'ai entrepris des modifications il y a déjà fort longtemps mais rien n'est encore terminé. frown

Réaction n°27 

par   titem32 le 19/11/2007 @ 14:01

bonjour,

j'ai oublié des infos :

le client est un windows serveur 2003

et mon server mail est un exchange 2003

 

merci

titem32


[réponse de damien, le 19/11/2007 à 20h12]
Que les choses soient claires : mon appli ne communique pas avec Exchange mais avec le serveur SMTP. C'est la même machine qui assure les deux fonctions ?

Réaction n°26 

par   titem32 le 19/11/2007 @ 13:55

Bonjour,

je n'arrive pas à envoyer de mail à partir d'un script : voici mes parametres.

sendmail /e:source@mail.com /u:destination@mail.com /t:test /s:xxx.xxx.xxx.xxx

A partir du serveur j'arrive à envoyer un mail en telnet ou à partir du GUI.

Help me please.

merci
Johnny


[réponse de damien, le 19/11/2007 à 20h07]
Le paramètre /m spécifiant le nom du fichier contenant le corps du message n'est pas optionel : il est obligatoire... A part ça, que se passe t'il exactement ? Y a t'il un message d'erreur ?

Quand vous dites que ça fonctionne à partir du GUI, vous parlez de la même appli mais en mode fenêtré ou d'un autre logiciel ?

Réaction n°25 

par   jeromoreau le 14/11/2007 @ 15:24
Bonjour,
Merci pour votre superbe petit utilitaire, fort pratique. Mais ... il y a un mais ... je n'arrive pas bien à l'utiliser.
Il faut dire que je suis vraiment nul en programmation.
Avec un chemin spécifique et un seul fichier à envoyer, pas de soucis.
Mais j'aimerais bien envoyer tous les fichiers d'un répertoire spécifique.
Bref, j'au fait un batch de ce type :

SendEmail -f adresse_envoyeur@anywhere.fr -t xxxx@xxx.fr -u test -m message_du_mail -s smtp.free.fr -a %Userprofile%Mes documentsMes fichiers reçusjeromoreau3221467187*.*

Mais cela ne fonctionne pas !!! Pourquoi ?
J'ai du copier sendemail à la racine de C: Comment lui indiquer un autre chemin pour qu'il le trouve? Car je veux ensuite excécuter ce .bat avec le planificateur de tâches. Merci pour ton aide.


[réponse de damien, le 14/11/2007 à 19h44]   Attention, cette réponse fait référence à une ancienne syntaxe de SendMail
Ne cherche pas plus longtemps : cette version de SendMail ne permet pas d'utiliser des jokers dans les noms de fichiers à joindre. C'est une fonctionnalité à laquelle je n'avais pas pensé, mais je l'ajouterai dans la prochaine... frown

En attendant, si tu veux joindre plusieurs fichiers, je te conseille de revoir ton fichier batch : il est facile d'utiliser 7-Zip (et certainement d'autres outils de compression, mais celui-ci est gratuit et pratique) en mode ligne de commande. Alors compresse le contenu du répertoire et tu n'auras qu'un seul fichier à envoyer ! wink

Sinon la syntaxe que tu utilises dans ton exemple est incorrecte : les paramètres doivent être précédés d'un slash ( / ) et non d'un tiret ; et ceux qui sont accompagné d'une valeur sont suivis des deux-points. Par ailleurs, de mémoire, le paramètre adresse de l'expéditeur est /e: et le /t: est utilisé pour définir le sujet du message et non le destinataire... Revois la syntaxe indiquée dans la boite "A propos de...". Voici la version corrigée :

Sendmail /e:adresse_envoyeur@anywhere.fr /u:xxxx@xxx.fr /t:test /m:message.txt /s:smtp.free.fr /a:%Userprofile%Mes documentsMes fichiers reçusjeromoreau3221467187fichier.txt



[réponse complémentaire de damien, le 15/11/2007 à 12h51]
En fait, j'ai compris une chose : ce n'est pas mon soft que vous utilisez mais le SendEmail, développé par Brandon Zehm.

Je suis donc désolé de ne pouvoir vous aider... smile

Réaction n°24 

par   liolio le 25/09/2007 @ 19:36
Bonjour,J'utilise sendmail 1.8 pour envoyer des mail en automatique. Pour ce j'ai créé une tache sous (XP, pro) qui s'execute toute les 10 mm. Sauf que le programme ne fonctionne que si la seccion est ouverte. le programme sendmail est lance dans un batch. Commentpuis je faire pour le lancer comme un service windows?Merci


[réponse de damien, le 26/09/2007 à 11h00]
Cet outil n'est pas prévu pour fonctionner en service. Il existe cependant des outils tiers qui permettent d'exécuter une appli standart en mode service, mais je n'ai pas de nom en tête...

Pour info, j'ai déplacé votre contribution dans le "livre d'or" vers l'article correspondant à SendMail... rolleyes

Réaction n°23 

par   Alf31fr le 21/09/2007 @ 14:42
Bonjour,
Tout d'abord bravo pour votre programme ... Cela faisait longtemps que je cherchais un outil de ce type (Simple, efficace, en ligne de commande et interface graphique). Seul petit bemol à mon enthousiasme débordant, l'envoi de mail ne fonctionne pas sur un server 2003 que j'utilise (alors qu'il fonctionne bien sur les autres). Le fichier de log n'est pas non plus créé lors de l'erreur.
Le message d'erreur est le suivant :
"Run-time error '429' : ActiveX component can´t create object"
Pouvez-vous me venir en aide ?
Merci d'avance.
-Alf31fr-


[réponse de damien, le 21/09/2007 à 15h12]
Ce genre de dysfonctionnement n'est en principe pas évident à résoudre car il peut être la conséquence de plusieurs problèmes. mad

Est-ce que l'appli a été correctement installée (par l'installeur d'origine) ou a t'elle été simplement copiée à partir du répertoire d'install d'une autre machine ?

Si SendMail a été installé "normalement", le problème peut venir d'un conflit avec une des DLLs utilisées. Je vous conseille de vérifier les versions des fichiers ossmtp.DLL, msvbvm50.dll et vb5fr.dll (toutes les 3 dans system32) avec celles d'une des autres machines sur laquelle le programme fonctionne. S'il y a une différence, je vous invite à récupérer les fichiers de l'autre machine pour les placer dans le répertoire de SendMail sur la machine qui pose problème. Il faudra alors "déclarer" ossmtp.dll dans la base de registre (en ouvrant une invite DOS dans le dossier de l'appli puis en exécutant : regsvr32.exe ossmtp.dll)...

Une autre explication peut-être le blocage de sécurité : vérifiez que le port et/ou l'appli ne sont pas bloqués par le firewall et/ou un éventuel antivirus.

Merci de me tenir au courant. wink

Réaction n°22 

par   sindiz le 05/09/2007 @ 11:12

Bonjour,

2 questions avec cet utilitaire vachement pratique et simple à mettre en oeuvre

+ Tous les accents de mon corps de message arrivent sous forme d'étoile (d*tail au lieu de détail) ???

+ Je cherche à mettre une adresse en copie. Avec la balise /U, je peux séparer n destinataires par une virgule mais ils doivent être tous dans le même domaine. Comment peut-on faire s'ils n'appartiennent pas au même domaine ??

Merci


[réponse de damien, le 05/09/2007 à 20h14]
Pour le problème d'accent, je viens de faire plusieurs tests et je n'ai constaté aucune anomalie. Je précise que le fichier contenant le corps du message avait été créé sous Windows et non sous DOS (où le mappage des caractères accentués est différent), ce qui pourrait expliquer votre problème. Mais il peut aussi s'agir de la configuration du serveur SMTP ou du client de messagerie utilisé pour la réception du mail. Dans la prochaine version, ce désagrément pourra être évité car il sera en théorie possible de spécifier le "charset" à utiliser...

Concernant le second point que vous évoquez, il est effectivement possible de spécifier plusieurs destinataires mais rien n'oblige à ce qu'ils appartiennent pas au même domaine. Cette contrainte ne s'applique que si vous spécifiez le domaine par le paramètre /@ et que vous omettez le domaine de chaque adresse. En revanche, si vous faites spécifiez des adresses complètes, vous êtes totalement libre de "panacher" la liste des destinataires.


Réaction n°21 

par   jeremy le 04/05/2007 @ 10:07

Bonjour,

voici la synthxe simple que j'ai utilisé pour envoyer un mail en ligne de commande

sendmail.exe /m:C:Program FilesDipisoftSendMailbody.txt /u:mail /t:test /s:192.168.1.244 /e:adresse_mail

merci a damen pour l'aide

bonne journee

jeremy.


[réponse de damien, le 04/05/2007 à 10h19]
Eh oui, ça fonctionne mieux quand on ne met pas les guillemets ! D'ailleurs, on voit bien qu'ils sont absents dans les exemples donnés dans la boite "A propos de...". eek
Merci de ton retour. smile


Réaction n°20 

par jeremy le 03/05/2007 @ 15:14

Bonjour,

j'ai cette synthaxe mais ca n'envoie pas les mail et je ne vois pas pourquoi

sendmail.exe /m:"C:Program FilesDipisoftSendMailbody.txt" /u:"mail" /t:"test" /s:"192.168.1.244" /e:"jeremy.maunoury@metal.axe-group.com"

merci d'avance et bonne journee


[réponse de damien, le 03/05/2007 à 19h24]
Première chose : quelque soit le paramètre, il ne faut pas utiliser les guillemets. Ils seront pris en compte dans une prochaine version mais ce n'est pas le cas pour l'instant.

Ensuite, l'adresse du destinataire ne contenant pas le domaine (@quelquechose...), le contenu du paramètre /@ y est ajouté. Et en l'absence de ce dernier, la valeur par défaut est récupérée dans le fichier de configuration. Peut-être est-il correctement configuré mais je n'en sais rien vu de chez moi ! wink

Par ailleurs, êtes vous sur d'avoir un serveur SMTP installé à l'adresse indiquée dans paramètre /s, qu'il n'y a pas de firewall pour vous y interdire l'accès et qu'il accepte bien les connexions non authentifiées.

Enfin, je terminerai par ceci : sans plus d'informations sur la nature du problème (message d'erreur) et le contexte (OS, logiciels, versions, etc) dans lequel vous utilisez le logiciel, je ne suis pas en mesure de vous aider davantage. Je n'ai pas encore reçu la boule de cristal commandée chez Surcouf le mois dernier ! tongue wink


Réaction n°19 

par   lsd889 le 23/04/2007 @ 12:44

Merci pour ce retour rapide ...

J'avais pourtant été dans l'aide ... mais j'avais fais l'impasse sur ce paramètre ...

Bonne continuation


[réponse de damien, le 23/04/2007 à 13h05]
Personne n'est parfait ! eek wink

Bonne continuation à vous aussi. Ah, un dernier conseil : inscrivez-vous à ma newsletter, vous ferez ainsi partie des premiers informés quand la prochaine version sortira... biggrin


Réaction n°18 

par   lsd889 le 23/04/2007 @ 12:07

Bonjour;
Merci pour ce soft bien pratique ...

Je l'utilise principalement en ligne de commande
Est t-il possible de desactiver le popup:
"attention" le message XX a été envoyé a x destinataires

Merci à vous,
Olivier


[réponse de damien, le 23/04/2007 à 12h27]
Bien sur ! Il suffit pour cela de diriger les notifications et messages d'erreurs dans le fichier log en ajoutant un /l (lettre L) dans la ligne de commande.

Au passage, merci pour le compliment et même si SendMail ne fait pas partie des 3 logiciels Dipisoft inscrits pour le concours "Logithèque d'Or", vous pouvez quand même voter pour IPScan32, WakeOnLan ou DipiView (il y a un lien dans les nouvelles). wink


Réaction n°17 

par Matthieu le 10/02/2007 @ 12:13

Bonjour,
je suis assistant en comm' dans un théâtre et j'ai un listing de 4000 adresses mails - je dois effectuer périodiquement des envois (notre programme) à tous ces destinataires.
Votre logiciel peut-il répondre à mes besoins ?

Cordialement,
Matthieu


[réponse de damien, le 11/02/2007 à 10h42]
La version actuelle de mon SendMail ne vous sera hélas d'aucune aide, à moins que la liste de vos destinataires soit stockée dans un groupe global de l'ActiveDirectory ce qui me surprendrait.

Toutefois, je pense ajouter de nouvelles fonctionnalités à l'avenir : il sera possible de spécifier le nom d'un fichier (voire même une base de données) qui contiendra la liste des adresses... Ça n'est ni très compliqué, ni très long à ajouter mais je manque de temps alors n'attendez rien dans les prochains jours !


Réaction n°16 

par JeanBaptiste le 17/01/2007 @ 16:58

Une question toute bête : je n'arrive pas à placer des accents dans le corps du message, que ce soit en mode interactif ou en ligne de commandes.

Y a-t-il un encodage spécial à utiliser ?

Merci en tout cas pour cet outil simple et complet.


[réponse de damien, le 17/01/2007 à 19h29]
Cela doit provenir de la config du serveur SMTP que vous utilisez car je viens de faire le test avec celui de free et ça fonctionne correctement. Si je n'oublie pas, j'ajouterai la possibilité de sélectionner le charset dans la prochaine version de SendMail pour éviter ce genre de désagrément.


Réaction n°15 

par   Math le 30/11/2006 @ 00:29

Re-bonjour,

Désolé... Je n'ai pas réellement cherché (ou plutôt j'ai eu la flemme de me creuser les méniges... même s'il ne fallait pas tant que cela)
En effet, le paramètre pour les fichiers joint n'est pas "/a" pour attachment ou "/j" pour joint mais "/f" pour fichier (ou file?)
Désolé pour le dérangement... et encore félicitation pour ce très bon soft.


[réponse de damien, le 30/12/2006 à 12h10]
Tout est dans la boite "A propos de", comme vous l'avez trouvé par vous même ! wink

Au passage, merci pour les compliments... Pour info, une nouvelle version de l'outil est en cours de finalisation : elle intégrera la possibilité de paramétrer l'accès à un serveur SMTP sécurisé, et quelques modifications sur la syntaxe pour le mode ligne de commande.


Réaction n°14 

par   Math le 30/11/2006 @ 00:04
Bonjour,

Le soft est génial et très simple... Je n'ai qu'un petit soucis, je n'arrive pas à joindre un fichier en ligne de commande...
Quel est la syntaxe en utilisant un script tel que celui décrit un peu plus bas ?

J'ai essayé le  " /a:C:\attach.txt " (sans les guillemets) mais cela ne fonctionne pas.

Merci pour votre réponse.