Page 1 sur 1

[R] Encapsulation Mime

Posté : ven. 26 sept. 2008 23:24
par Strofe
Bonjour,

Je cherche à envoyer un mail (COD.Message) --> HTMLBody
Je souhaite mettre une image dans le corps du sujet.
Je pense utiliser l'encapsulation Mime.
Mais je ne sais pas comment faire.

J'ai déjà fait des tests avec la balise <IMG src="toto.jpeg"> mais le mail arrive sans l'image.

Merci de me donner un coup de main

Christophe

Re: [..] Encapsulation Mime

Posté : dim. 28 sept. 2008 15:07
par Strofe
J'ai trouvé une solution.

:P :P :P :lol: :lol: :lol: :P :P :P

Code : Tout sélectionner

;Christophe 
;
;Liens utilisés pour faire ce morceau de code.
;
;http://classicasp.aspfaq.com/email/how-do-i-send-e-mail-in-html-format.html
;http://www.atoutfox.org/articles.asp?ACTION=FCONSULTER&ID=0000000041
;
    $SMTPServer = "smtp.free.fr"  
    $cdoURL = "http://schemas.microsoft.com/cdo/configuration/"  
 
    $FromAddress = "emetteur@fai.fr"  
    $ToAddress = "destinataire@fai.fr"  
    $Subject = "Sujet du message"  
        
    $MHTMLBody = '<HTML><BODY><IMG src="optimum.gif" align=left>OPTIMUM<br>'
    $MHTMLBody = $MHTMLBody & 'Christophe<br>'
    $MHTMLBody = $MHTMLBody & '</BODY></HTML>'

    $file = FileOpen(@ScriptDir & "\mail.html", 8+2)    
    FileWrite($file, $MHTMLBody)
    FileClose($file)
    $cdoM = ObjCreate("CDO.Message")  
    $cdoC = ObjCreate("CDO.Configuration")  
    $cdoF = $cdoC.Fields  
 
    With $cdoF  
        .Item($cdoURL & "sendusing") = 2  
        .Item($cdoURL & "smtpserver") = $SMTPServer  
        .Item($cdoURL & "smtpconnectiontimeout") = 10  
        .Update  
    EndWith  
 
    With $cdoM           
        .Configuration = $cdoC 
        .From = $FromAddress  
        .To = $ToAddress  
        .Subject = $Subject  
        ;Clé du résultat 
            ;Passage d'une adresse et pas de la variable. 
            ;C'est pour cela que j'ai fait la sauvegarde en amont.
        .CreateMHTMLBody(@ScriptDir & "\mail.html")
        .Send  
    EndWith  
 
Le code est juste une ébauche, sans parlé du Html.

Mais cela fonctionne.

Strofe

Re: [R] Encapsulation Mime

Posté : dim. 28 sept. 2008 16:13
par timmalos

Code : Tout sélectionner

$MHTMLBody = '<HTML><BODY><IMG src="optimum.gif" align=left>OPTIMUM<br>'
$MHTMLBody = $MHTMLBody & 'Christophe<br>'
$MHTMLBody = $MHTMLBody & '</BODY></HTML>'
Peut etre rempalcé par:

Code : Tout sélectionner

$MHTMLBody = '<HTML><BODY><IMG src="optimum.gif" align=left>OPTIMUM<br>'
$MHTMLBody &='Christophe<br>'
$MHTMLBody &='</BODY></HTML>'

Re: [R] Encapsulation Mime

Posté : dim. 28 sept. 2008 21:04
par Strofe
Merci pour cette astuce.

J'avais bien essayé le .=
Et oui les habitudes du PHP.

A plus

Christophe :wink:

Re: [R] Encapsulation Mime

Posté : dim. 28 sept. 2008 21:43
par Strofe
Bonsoir

Un petit plus

Pour effectuer la sauvegarde

A ajouter à la suite du code précédent

Code : Tout sélectionner

    ;Récupération du contenu du message dans un flux
    $stream = $cdoM.GetStream() 

    ;Sauvegarde du résultat (eml = extension au format mail)
    $stream.savetofile = @ScriptDir & "\ee.eml"
    $Stream.Close
 
:roll: