Bonsoir Guy,
Dans l'instruction "make new attachment" , le paramètre file name doit être un alias (une référence au fichier).
Tu as donc plusieurs méthodes possibles :
- la variable CheminFichier (":Untitled 1:Users:guyfroment:..... fiscale 2015.pdf") est une string, dans ce cas il faut mettre : {file name : CheminFichier as alias}
- la variable CheminFichier contient un alias vers le fichier et dans ce cas il suffit de mettre {file name : CheminFichier}
J'en profite pour te signaler qu'il n'est pas conseillé de mettre un chemin "en dur" dans un script car si tu changes de disque dur ou d'utilisateur, le script ne fonctionne plus.
Il est plus souple et joli de partir du dossier Documents de l'utilisateur en cours. Par exemple :
set CheminFichier to ((path to documents folder) as string) & "Attestations 2015:FROMENT GUY Attestation fiscale 2015.pdf"
Bien sûr dans ce cas la variable CheminFichier est....une string !! Donc à faire suivre de 'as alias' pour l'instruction CheminFichier.
Une fois cela réglé, il reste que le mail part, ...mais sans fichier.
C'est me semble-t-il un comportement qui n'existait pas sur SnowLeopard (10.6), mais qui peut poser un problème sur ElCapitain (10.11).
Pour le contourner, il suffit d'ajouter un délai entre l'ajout de la pièce jointe et l'envoi de l'email, ce qui laisse à Mail le temps de réagir.
Le délai doit sans doute être variable selon la taille de la pièce jointe et la vitesse de ta machine....à essayer.
Dans le script ci-dessous qui fonctionne, j'ai mis un délai de 1 seconde.(ElCapitain, iMac27 i7)
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| set CheminFichier to choose file-- c'est un alias !!set Mon_Sujet to "sujet du mail"
set Mon_Content to "essai de texte"
set Mon_Destinataire to "p_bell@orange.fr"
tell application "Mail"
activate
set newMessage to make new outgoing message with properties {visible:true, subject:Mon_Sujet, content:Mon_Content}
tell newMessage
make new to recipient at end of to recipients with properties {name:"", address:Mon_Destinataire}
make new attachment with properties {file name:CheminFichier} at after the last paragraph
end tell
delay 1
send newMessage
end tell |
Si tu choisis la méthode 'string', pense à ajouter 'as alias' après CheminFichier, dans l'instruction new attachment !
Cordialement
Partager