IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Discussion :

robot d'envoi de mail


Sujet :

Windows

  1. #1
    Invité
    Invité(e)
    Par défaut robot d'envoi de mail
    Bonjour,

    Je cherche à envoyer ponctuellement un mail avec un robot via une ligne de commande en batch :

    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    https://www.virtualobjectives.com.au/utilitiesprogs/sendsmtp.htm , comparatif ( https://www.raymond.cc/blog/sending-email-using-command-line-useful-for-downtime-alert-notification/ )
     
    echo --- test 
     
    SendSMTP.exe /nos /host smtp.gmail.com /port 587 /auth 2 /userid monmail@gmail.com /pass password /from monmail@gmail.com /to mail@reception.com /subject "subject" /BODY "test" /BODYFILE "D:\Users\monnom\Desktop\test.txt"
     
    pause

    En envoyant un mail l'instruction body et bodyfile ne fonctionnent pas. Le mail part mais n'a pas de texte et la piece jointe fait 1 ko. J'ai l'intitulé du mail , la trace d'une piece joint associé qui n'est pas celle que j'envoi :/

    Merci de m'aiguiller

  2. #2
    Membre Expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Par défaut
    Salut,

    as-tu autorisé les applications moins sécurisées à accéder à ton compte ?

    https://support.google.com/accounts/.../6010255?hl=fr

    Et le SSL est-il activé ?


  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Après test sur plusieurs des mailsender du lien que j'ai posté il s'avère que :

    - sendmail ici utilisé ne fonctionne pas pour les instructions "/body" et "/bodyfile"
    - bmail ne fonctionne pas tout cours
    - cmail fonctionne >>
    - possibilité d'envoyer en shell (par contre comment automatiser un ps1 ?)

    Code bat : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    echo --- test 
     
    CMail.exe -secureport -host:sendermail:mdp@smtp:port -from:fictivsendermail -to:receptermail -subject:"test" -body:"test" -a:"D:\Users\test.txt"
     
    pause

    Code testé sur 4 smtp différents est fonctionne

    gmail.com
    yandex.ru
    orange.fr
    orange.es

    sendmail.exe et bmail.exe ne fonctionnent pas car plus a jour. Oui j'ai bien activé ce que tu demandes via gmail.

  4. #4
    Membre Expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Par défaut Envoyé Email GMAIL depuis un BAT
    Bon,

    Voilà la méthode pour envoyer ça depuis un BAT en utilisant Powershell.
    Il faut préalablement "Autoriser les applications moins sécurisées à accéder à votre compte"

    https://support.google.com/accounts/.../6010255?hl=fr

    Le compte étant celui que vous allez définir dans la variable $Username du code ci-dessous.
    En faît c'est le compte qui va envoyer l'Email.


    Code Bat : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    ::By SachaDee 2016
    ::Use and Abuse It !!@!
     
    @echo off&cls
     
    set $Username='Ton_Acompte_Gmail@gmail.com'
    set $Password='Le_Mot_De_Passe'
    set $to='Le_Destinataire_@xmail.com'
    set $subject='Le Sujet'
    set $body='Le Message'
    set $AttFile='C:\chemin\vers\le\fichier\annexe\test.txt'
     
    set $SMTPServer='smtp.gmail.com'
    set $SMTPPort='587'
     
    powershell.exe -command "$message = New-Object System.Net.Mail.MailMessage;$message.subject = %$subject%;$message.body = %$body%;$message.to.add(%$to%);$message.from = %$username%;$smtp = New-Object System.Net.Mail.SmtpClient(%$SMTPServer%, %$SMTPPort%);$smtp.EnableSSL = $true;$smtp.Credentials = New-Object System.Net.NetworkCredential(%$Username%, %$Password%);$att = new-object Net.Mail.Attachment(%$AttFile%);$message.Attachments.Add($att);$smtp.send($message)"

    Bien entendue a n'utiliser qu'en interne par vous même. Si vous voulez un système un peu plus sûr exporter vos credential dans un XML et importer ce xml en utilisant ce script
    ainsi votre MDP sera crypté dans le XML.

    Pour generer ce XML :

    - Dans la console Powershell :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $MyCredentials=GET-CREDENTIAL -Credential "'Ton_Acompte_Gmail@gmail.com" | EXPORT-CLIXML SecureCredentials.xml
    ensuite entrer le MDP dans la fenêtre qui s'ouvre et envoyer.

    ça generera un fichier XML de ce genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <Objs Version="1.1.0.1" xmlns="http://schemas.microsoft.com/powershell/2004/04">
      <Obj RefId="0">
        <TN RefId="0">
          <T>System.Management.Automation.PSCredential</T>
          <T>System.Object</T>
        </TN>
        <ToString>System.Management.Automation.PSCredential</ToString>
        <Props>
          <S N="UserName">Ton_Acompte_Gmail@gmail.com</S>
          <SS N="Password">01000000d08c9ddf0115d1228c7a00c04fc297eb0100000045195692056717d44bf346db621c53c30000000000200000000001066000000010000200000002844ab97789282cc362a723550be732d0a39d714334433012d419039cc6c6ae7000000000e8000000002000020000000435772a1c2978513e249a8fd83b3b869a5d6be0e7630ce1ebfa4f01f1849664d2000000050eb2d423b5a2a4bd0ca0f508e2633e385f0e029516d959abaed2df6e4f0c2f6400000007b7e79da231422aa730bf45040f528822b970755d12747f76faff75d2171645f25b597329339262e6f5c4c8b83229f12e2f04a057a33f8897b96db15ffb9a995</SS>
        </Props>
      </Obj>
    </Objs>

    Pour utiliser ces credential depuis le XML :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $MyCredentials=IMPORT-CLIXML SecureCredentials.xml
    Donc le MDP sera crypté mais il est clair qu'avec ce fichier XML je pourrai utiliser ton compte GMAIL pour envoyer des mails ou autres.

    L'avantage de cette technique et que tu peux faire un script générique en éliminant le $username et $password. Il suffit de créer le fichier XML pour le compte GMAIL
    qui va être utilisé et voilà.

    C'était juste pour montrer cette possibilité.






  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Merci de la proposition en shell j'avais déjà testé un code qui fonctionne.

    Je garde par contre le votre sous la main pour ce qui concerne la sécurisation du mot de passe.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Envoi de mail au format html
    Par Mephyston dans le forum C++Builder
    Réponses: 2
    Dernier message: 22/01/2004, 12h29
  2. Envoi de mail au format Rich-Text
    Par LineLe dans le forum ASP
    Réponses: 4
    Dernier message: 29/10/2003, 16h27
  3. envoi de mail avec attachement de fichier
    Par GMI3 dans le forum Modules
    Réponses: 2
    Dernier message: 24/09/2003, 11h22
  4. Outlook ne se ferme pas après un envoi de mail
    Par Joke dans le forum VBA Access
    Réponses: 2
    Dernier message: 07/06/2003, 17h32
  5. envoi de mail, protocol SMTP langage C
    Par Heimdall dans le forum Développement
    Réponses: 2
    Dernier message: 23/05/2003, 11h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo