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

sendmail01.pngsendmail02.png
français anglais allemand   (pour contribuer, rendez-vous sur la page des fichiers de langues)

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.

ATTENTIONcet outil ne doit pas être utilisé pour effectuer du spam !

Télécharger Télécharger ce logiciel (version installeur)
Télécharger 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 : 31/03/2024 @ 12:52
Catégorie : - Aide à l'administration
Page lue 171793 fois
 

Réactions à cet article

Réaction n°101 

par Flavien le 05/03/2015 @ 11:15

Bonjour,

Tout d'abord merci pour ce très bon utilitaire. Par contre, en tâche planifiée avec un .bat avec plusieurs envois différents, SendMail exécute uniquement le premier envoi et reste bloqué. Malgré l'utilisation de la commande /l.

Avez-vous une solution?

Par avance merci.

[réponse de damien, le 05/03/2015 à 19h10]

Tu peux m'envoyer ton fichier .bat et un export de ta tâche planifiée (ça produit un .xml, de mémoire), le tout dans un fichier compressé avec 7-zip sinon ce sera filtré par l'antispam de ma messagerie ?

Merci d'avance.


Réaction n°100 

par yvo le 07/01/2015 @ 22:45

Bonjour,
Quel bel outil...Je l'utilise pour envoyer des mails en masse via une macro Excel.Je suis en windows 8.1 et pack office 2010.
J'ai un souci que j'exposeJe suis obligé de mettre une tempo de 3 secondes entre chaque envoi de mail sinon, j'ai le message suivant :

-----

"... Erreur d'exécution 40006":Wrong protocol or connection state for the requested transaction or request"

----


D'autre part sans la tempo, j'ai remarqué que dans mon gestionnaire de tâches, j'avais plein de processus SendMail .exe (32 bits) et mon processeur est à 100%Quand je mets la tempo à 3", j'ai maximum 3 processus SendMail.exe
Est-ce normal ?Ya t'il une option qui permet d'éviter cette tempo de 3" ?
A vous lire

Yvo

[réponse de damien, le 08/01/2015 à 07h54]

Il ne me parait pas du tout anormal que lors d'un "envoi en masse" (enfin tout dépend comment il est effectué), le nombre de processus SendMail augmente en conséquence et consomme des ressources importantes. Il est aussi tout à fait normal que le nombre de processus ainsi que les ressources utilisées baissent en ajoutant une tempo entre 2 appels à SendMail, chaque "instance" ayant plus de temps processeur et de mémoire à disposition pour faire son job.

Par ailleurs, je ne suis pas surpris qu'une telle utilisation (sans les tempos), donc consommation importante de ressources, provoque une "saturation" et occasionne des erreurs. En la circonstance, il ne s'agit pas d'une erreur de l'appli mais du composant (ossmtp.ocx) utilisé pour l'envoi des mails.

Les mails envoyés sont-ils tous différents ? Si non, ne peux-tu pas constituer un fichier des destinataires et n'invoquer SendMail qu'une fois, il se chargera alors lui-même d'envoyer autant de mails que nécessaire (dépendant du nombre de destinataires par "lot") ?


Réaction n°99 

par windo le 02/01/2015 @ 12:17

Bonjour et meilleurs vœux pour 2015 !
Merci pour cet utilitaire très pratique et gratuit, et qui malgré tout, évolue de temps en temps ! bravo.
Juste une question : sous Vista, le gestionnaire de MAJ reste dans les programmes bloqués au démarrage et je ne vois pas comment l'autoriser de façon permanente.
Aurais-tu une idée à ce sujet ?
Merci et encore bravo.

windo

[réponse de damien, le 02/01/2015]

Merci pour tes vœux, accepte les miens en retour.

Tu peux préciser ce que tu entends par "reste dans les programmes bloqués au démarrage" ? En principe il se lance mais déclenche l'affichage d'un "prompt de l'UAC" qui demande de confirmer l'exécution... non ?

Si c'est bien ça alors oui j'ai une solution, mais elle n'est pas simple à mettre en oeuvre. Elle consiste à utiliser DipiRunAs pour lancer DipisoftUpdate avec le compte administrateur, ce dernier ne déclenchant pas l'UAC. Si tu es intéressé et que tu te sens d'attaque, je peux te donner la marche à suivre scrupuleusement.


Réaction n°98 

par phil le 20/11/2014 @ 08:34

GUI works great, thank you for your work.   Command line error can't get it to work 
19/11/2014 23:25:08 : The sending ended abnormally : - Error 12550: 5.1.0 <SendMail> invalid address

[réponse de damien, le 20/11/2014 à 08h53]

I guess you may have made an error in the syntax of the command line. Can you send it to me so I can see if it is a really an error on your part or a bug in the app?

Thank you in advance.


Réaction n°97 

par Gilles le 15/08/2014 @ 15:48

Bonjour,

je suis trés satisfait du fonctionnement de Sendmail, aussi bien en mode fenetre qu'en mode commande en ligne, quoi qu'avec ce dernier la reussite de l'envoi provoque l'aparition d'un popup, y-a-t-il un moyen d'empécher l'apparition de ces popup ? merci, bonne continuité,

Cdt,

Gilles.

[réponse de damien, le 15/08/2014 à 15h53]

Comme c'est mentionné dans la boite "A propos de" et répété à de très nombreuses reprises dans mes réponses aux commentaires d'utilisateurs : en ajoutant le paramètre /l (L minuscule), la fenêtre d'information n'est plus affichée mais son contenu est journalisé dans le fichier log...


Réaction n°96 

par Laurent le 04/03/2014 @ 15:15

Bonjour,

Tout d'abord encore bravo pour cet outil vraiment pratique.
Je rencontre un soucis dans l'utilisation de Sendmail en batch planifié sur un serveur Windows 2008 R2 64 bits.
Le même batch appelle plusieurs fois sendmail pour envoyer 5 ou 6 fichiers à différents utilisateurs.... En lancement manuel, le batch fonctionne sans problème et les différents appels de Sendmail se font bien.
En lancement par tache planifiée, seul le 1er sendmail se fait (le mail est envoyé) mais visiblement le programme ne "rend pas la main". On voit clairement le processus bloqué en gestionnaire de taches, et donc le batch ne se continue pas.
En tuant le processus le batch continue jusqu'au prochain Sendmail et au prochain blocage.

Auriez-vous une explication, une piste à suivre, qui ferait que le processus Sendmail*32 ne se termine pas en appel planifié ?

Je précise que c'est un appel planifié administrateur.

Bien cordialement.

[réponse de damien, le 04/03/2014 à 15h37]

As-tu ajouté le paramètre /l (L minuscule) ? Il permet de rediriger le récapitulatif de l'opération dans le fichier de log au lieu de l'afficher dans une boite de dialogue...
D'autre part, s'il s'agit du même mail adressé à plusieurs personnes, plutôt que de lancer SendMail autant de fois que tu as de destinataires tu peux le faire en 1 seul envoi en séparant les adresses par une virgule. L'option /nde permet de définir le nombre de destinataires par mail. Au final, si tu utilises /nde:1, il enverra autant de mails que d'adresses spécifiées mais tu n'auras invoqué SendMail qu'une seule fois. Ce qui permet d'alléger ton batch d'appel.

Réaction n°95 

par SnIpEr le 10/01/2014 @ 08:34

Bonjour, 
J'ai cette erreur qui s'affiche lorsque je veux envoyer un mail :
error 12530 : Must issue a STARTTLS command first. po3sm3365971wjc3 - gsmtp
J(utiliser une adresse gmail :
serveur smtp : smtp.gmail.comPort 587.Authentification LoginUsername : Adresse mail gmail.Password : MDP gmail

[réponse de damien, le 10/01/2014 à 09h28]

Ce qui est tout à fait normal dans la mesure où mon appli utilise un composant (OSSMTP.ocx) qui ne prend pas en charge les connexions sécurisées (SSL/TLS). J'ai contacté son auteur pour lui poser des questions quant à l'utilisation de sa dernière version avec VB5 car je ne parviens pas à le faire fonctionner mais il ne me répond pas.
Peut-être ré-écrirais-je cette appli dans un langage plus moderne (offrant plus de possibilités) mais j'ai d'autres projets à traiter en priorité...
Désolé pour le désagrément mais je n'ai pas de solution à t'apporter. pas ma faute

Réaction n°94 

par SnIpEr le 09/01/2014 @ 14:17

Bonjour,
J'aimerai utiliser SendMail pour faire un envoi périodique de mail par exemple tout les jours à 00h, du coup j'ai créé un fichier .bat que j'éxécute périodiquement.
Mon problème est comment paramètrer les informations SMTP et les paramètres d’authentification du compte mail?
Si je les paramètre via l'interface graphique va-t-il me les garder quand je vais simplement marquer mon adresse mail mon corps de message et mon message dans ma ligne de commande?
Merci pour votre aide.

[réponse de damien, le 10/01/2014 à 09h30]

Les paramètres SMTP sont effectivement à renseigner via l'interface graphique mais ils sont utilisés AUSSI par la version ligne de commande.


Réaction n°93 

par raplapente le 22/12/2013 @ 23:31

Bonsoir,En ligne de commande, sauf erreur, on ne peut pas entrer le user name et le password pour l'authentification SMTP. Il faut entrer ces infos dans l'IHM n'est ce pas ?P.S. question surement bête mais c'est quoi la différence avec SENDMAIL et SENDMAIL version portable : à quoi sa sert la version portable ?En tout cas merci car j'arrive à faire ce que je veux avec.

[réponse de damien, le 23/12/2013 à 16h25]

Il n'est effectivement pas possible de spécifier les informations de compte SMTP par la ligne de commande. Ces informations sont à paramétrer via l'appli en mode GUI (interface graphique).

Pour ce qui est des différences entre la version installeur et les versions portables, il n'y en a aucune au niveau de l'exécutable : ce sont rigoureusement les mêmes. Ce qui change c'est uniquement le fait que dans un cas l'appli est packagée avec un installeur (qui se charge d'installer les composants ActiveX dépendants et le module de mise à jour DipisoftUpdate optionnel) ; les versions portables contiennent le minimum nécessaire...


Réaction n°92 

par Andre le 18/11/2013 @ 22:52

Hello,

J'ai utilisé Sendmail v2.2 pour envoyer quelques mails automatiquement. Super la fonction pour ajouter une pièce jointe !

Toutefois, j'ai calé sur les caractères accentués dans l'objet.

J'ai généré un fichier sous Excel puis copié par CTRL+C / CTRL+V le contenu dans Notepad et sauvé le fichier avec une extension .BAT (300 lignes avec la commande Sendmail).

En déclenchant le fichier .BAT, l'objet dans le message reçu est :

Conf?rence -d?cod'image-

Alors que ma commande, lisible correctement dans Notepad était :

sendmail /a:"adresse_email_A" /o:"Conférence -décod'image-"  /chf:"Invitation.html" /pj:"conferenceDECODimage-27nov2013final.pdf" /de:"adresse_email_DE" /r /l

Le plus frustrant est qu'en faisant des copier/coller depuis Excel directement dans une fenêtre de commande, cela fonctionne.

Une idée du mécanisme diabolique derrière ceci et de la manière de le résoudre ?

D'avance merci

André

[réponse de damien, le 19/11/2013 à 00h14]

L'encodage des accents est différent entre le "monde" Windows et l'interpréteur de commandes MS-DOS.

Quand tu prépares un fichier .bat (contenant par exemple : @echo off && echo àéïôù && pause) sous Windows avec un éditeur de texte lambda, les accents seront encodés à la sauce Windows ; en exécutant le script, les accents n'auront pas le rendu attendu. Maintenant, copie ce texte dans le presse-papiers, colle-le dans une fenêtre d'invite de commandes et presse Enter pour l'exécuter... les accents seront corrects. Ceci est dû au fait que lors du collage l'interpréteur transpose les accents à la sauce MS-DOS.

Si je ne m'abuse, c'est la même chose que tu constates avec SendMail, non ? Donc il ne s'agit pas d'un bug de mon soft...

Pour générer tes fichiers batchs avec des accents "corrects" à l'exécution, tu peux utiliser Notepad++ et ajuster l'encodage via le menu Encoding>Character set>Western European>OEM 850. D'autres éditeurs proposent des fonctions équivalentes.

Je vais voir si je peux ajouter (pour la prochaine version) un paramètre qui, ajouté à la ligne de commandes, permettrait de ré-encoder correctement les caractères.