Sauvegarder un mail au format eml

Gromush Messages postés 5 Date d'inscription jeudi 25 novembre 2004 Statut Membre Dernière intervention 13 décembre 2004 - 7 déc. 2004 à 12:24
Gromush Messages postés 5 Date d'inscription jeudi 25 novembre 2004 Statut Membre Dernière intervention 13 décembre 2004 - 9 déc. 2004 à 11:32
Bonjour,
je cherche à sauvegarder des mails au format eml, j'ai essayé avec MAPI et j'ai pas trouvé la solution. Je me suis alors résolu à installer Outlook, et là j'ai était content de voir qu'on peut utiliser save as. Avec ça, le fichier et bien enregistré, mais les attachements aparaisse sous forme de plein de petit carré (mauvais code), et il manque aussi le nom de l'emetteur, le sujet et le nom du receptionneur.
Je vous donne mon code vous pourrez peut etre m'aider:

Set Olook = New Outlook.Application
Set Omail = Olook.CreateItem(olMailItem)

Omail.Subject = "Sujet"
Omail.To = "cible@machin.bug"

x =Omail.Attachments.Add("attachement", , 1, "nom_attachement")
Omail.Body = "texte"
Omail.SaveAs "nomMail.eml", olMsg 'ici j'ai essayé tout les types ol...

et puis je cherche aussi à pouvoir réouvrir ce mail si vous savez faire je vous remercie de m'aider

2 réponses

barley Messages postés 107 Date d'inscription jeudi 28 janvier 2010 Statut Membre Dernière intervention 28 janvier 2010
7 déc. 2004 à 12:50
Le but, c'est quoi, de sauvegarder un mail?? je suis pas bien sûr...
Sinon, moi, quand je fais, "save as", ça marche très bien.

Si ton application, c'est créer un message mail outlook et l'ouvrir:
Shell ("C:\Program Files\Outlook Express\msimn.exe /mailurl:mailto:adresse_email@xxx.fr?subject=le sujet&Body=le texte"), vbHide
ici, l'exemple est sur outlook express, mais je pense que tu dois pouvoir l'adapter pour outlook, il doit juste falloir remplacer "Outlook Express" par "Outlook" et "msimn.exe" par l'executable d'Outlook.

autre solution, passer par internet explorer:
Shell "C:\Program Files\Internet Explorer\IEXPLORE.EXE mailto:x@y.zom", vbHide

ensuite, pour créer un fichier eml, tu peux aussi passer par le bloc note et enregistrer sous "fichier".eml
exemple:

Set fm = CreateObject("Scripting.FileSystemObject")
Set am = fm.CreateTextfile("c:\mail.eml", True) 'creation d'un fichier eml
am.writeline ("To: " & Chr(34) & "x@y.zom" & Chr(34) & Chr(10) & "Subject: sujet" & Chr(10) _
& "Date: date" & Chr(10) & "MIME-Version: 1.0" & Chr(10) _
& "Content-Type: multipart/alternative;" & Chr(10) _
& "boundary = " & Chr(34) & "----=_NextPart_000_0008_01C4642D.94A3B880" & Chr(34) & Chr(10) _
& "X-Priority: 3" & Chr(10) _
& "x -MSMail - Priority: Normal" & Chr(10) & "X-Unsent: 1" & Chr(10) _
& "X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1107" & Chr(10))
am.Close ' ferme le fichier

ceci n'est qu'un exemple

J'espère avoir pu te guider sur quelques solutions, je connais pas ton appli exact... bonne continuation
0
Gromush Messages postés 5 Date d'inscription jeudi 25 novembre 2004 Statut Membre Dernière intervention 13 décembre 2004
9 déc. 2004 à 11:32
Merci Barley,
mais moi le probleme que j'ai c'est que lorsque j'utilise save as, il me sauvegarde bien le mail, mais ce sont les pièces jointes qui ne sont pas accessible dans le mail sauvegarder. Il y a plein de petit carré à la place des pieces jointes.
Bon de toute façon, aujourd'hui je suis bien trop malade pour bosser la dessus.
Merci de ton aide.
0
Rejoignez-nous