Envoyeur de mail en batch/dos

Soyez le premier à donner votre avis sur cette source.

Vue 9 379 fois - Téléchargée 825 fois

Description

Ce projet permet d'interpreter les arguments qu'on lui donne et de les retranscrire dans des variables pour envoyer un mail. Il crée une clé dans HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\email.exe qui permet de creer un raccourci pour l'ouvrir.
En batch ça donne ça (à écrire sur une ligne):
email /from="expediteur1@domaine1.fr" /pass="motdepasse" /to+="destinataire@domaine.fr; destinataire2@domaine2.com" /port="port" /ssl=[True / False] /priorite=[B (basse)|N (normal)|H (haute)] /subject="sujet" /body+="textedumessage" /body+="texte2dumessage"

Source / Exemple :


'voir zip

Conclusion :


N'hésitez pas à commenter et à noter

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
97
Date d'inscription
lundi 5 juillet 2010
Statut
Membre
Dernière intervention
21 mars 2012
2
dsl pour la sources mais sous microsoft visual basic express 2010, ta source ne marche pas
Messages postés
5
Date d'inscription
dimanche 23 février 2003
Statut
Membre
Dernière intervention
25 mai 2009

Encore une remarque :

Si c'est des mail pour faire de l'Admin on utilise (les Admins Sys Windows) généralement l'outille Blat (http://www.blat.net/) par contre je ne sais pas si il fonctionne avec gmail.

Cdt
Messages postés
5
Date d'inscription
dimanche 23 février 2003
Statut
Membre
Dernière intervention
25 mai 2009

Non tu fais ca de la façon suivante

email ... /to+="mail1@mail.com" /to+="mail2@mail.com" .....

Fait aussi attention a l'utilisation des expression régulier pour tester la valeur de l'adresse Mail, j'ai un peut potassé le sujet mais j'ai rien trouvé de convainquant.

Cdt
Messages postés
26
Date d'inscription
vendredi 30 octobre 2009
Statut
Membre
Dernière intervention
27 juin 2011
1
Merci pour tes conseils ebaloo, mais je n'ai pas bien compris ça:

Autrement pour trouvé tes MailTo et les stocker dans ta liste il y a plus simple si tu es en .net 3.5, un peut le LINQ ;)

Ex :
List<string> mailTo = new List<string>();
string arg_header = "/" + "to+" + "=";
mailTo = (from l in Environment.GetCommandLineArgs()
where l.StartsWith(arg_header)
select l.Replace(arg_header, "")).ToList();


J'ai repris ça en VB.NET mais comment dois je séparer les adresses mail ? avec un ";", des "[]" ?

Encore merci pour ta réponse !
Messages postés
5
Date d'inscription
dimanche 23 février 2003
Statut
Membre
Dernière intervention
25 mai 2009

2/3 petits trucs :
(Attention mon codes est en C#)

Dans ton passage de valeur tu utilise : /ssl=[Y (yes)/N (no)] /priorite=[B (basse)|N (normal)|H (haute)]

Il serrait plus judicieux pour /ssl= que tu passe « true » ou « false » et que tu fasses une conversion du type :
Convert.ToBoolean("Ta valeur");
L’avantage est que tu peux passer 0, 1, True, true, False, etc...

Un peut le même type de remarque pour t’on enumérateur « Priorite ».
Regarde l’exemple ci-dessous

namespace TestDivers
{
public enum _Type : int
{
Hight,
Low,
Normal
}

class Program
{
static void Main(string[] args)
{

_Type t = _Type.Normal;

Console.WriteLine(t);

t = (_Type)Enum.Parse(typeof(_Type), "Hight");

Console.WriteLine(t);

#if DEBUG
Console.WriteLine("*** END ****");
Console.ReadLine();
#endif

}
}
}

Autrement pour trouvé tes MailTo et les stocker dans ta liste il y a plus simple si tu es en .net 3.5, un peut le LINQ ;)

Ex :
List<string> mailTo = new List<string>();
string arg_header = "/" + "to+" + "=";
mailTo = (from l in Environment.GetCommandLineArgs()
where l.StartsWith(arg_header)
select l.Replace(arg_header, "")).ToList();

Avec une petite adaptation tu peux l'utiliser pour tous tes arguments.

Bon codage....
Afficher les 8 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.