Bonsoir,
J'aimerais savoir comment envoyé le contenu d'un string par e-mail.
Merci
Exodus, Débutant en PureBasic
Envoie d'un mail
Tu mets ta chaîne dans msgbody et voila 
MODIFICATION (oublie d'une partie du code
)

MODIFICATION (oublie d'une partie du code

Procedure send(msg.s)
Global resultSM.s, connectionID
SendNetworkData (connectionID, @msg, Len (msg))
EndProcedure
Procedure.s wait()
resultSM = ""
For tmp = 1 To 4999
resultSM + " "
Next
ReceiveNetworkData (connectionID, @resultSM, 4999)
resultSM = Left (resultSM, 3)
ProcedureReturn resultSM
EndProcedure
ProcedureDLL.l SendMail(ServerIP.s, mailto.s, mailfrom.s, subject.s, msgbody.s, port = 25) ; Envoie un message à l'adresse mail choisie (port=25 la plupart de temps)
Global resultSM.s, connectionID
If InitNetwork ()
connectionID = OpenNetworkConnection (ServerIP, port)
If connectionID
wait()
error = 0
If resultSM = "220"
send( "HELO CGIapp" + #CRLF$ )
wait()
If resultSM = "250"
Delay (100)
send( "MAIL FROM: <" + mailfrom + ">" + #CRLF$ )
wait()
If resultSM = "250"
send( "RCPT TO: <" + mailto + ">" + #CRLF$ )
wait()
If resultSM = "250"
send( "DATA" + #CRLF$ )
wait()
If resultSM = "354"
Delay (100)
send( "Date: " + #CRLF$ )
send( "From: <" + mailfrom + ">" + #CRLF$ )
send( "To: <" + mailto + ">" + #CRLF$ )
send( "Subject: " + subject + #CRLF$ )
send( "X-Mailer: PBMailer" + #CRLF$ )
Delay (100)
; send("--"+#CRLF$+"--"+#CRLF$+#CRLF$)
send(msgbody)
Delay (100)
send( "" + #CRLF$ )
send( "." + #CRLF$ )
wait()
If resultSM = "250"
Delay (100)
send( "QUIT" + #CRLF$ )
wait()
ProcedureReturn 1
EndIf
EndIf
EndIf
EndIf
EndIf
EndIf
CloseNetworkConnection (connectionID)
EndIf
EndIf
EndProcedure
Code : Tout sélectionner
; German forum: http://robsite.de/php/pureboard/viewtopic.php?t=765&highlight=
; Author: stbi
; Date: 30. April 2003
Global res.s, cr.s, ConnID.l
cr.s=Chr(13)+Chr(10)
Procedure send(msg.s)
SendNetworkData(ConnID,@msg,Len(msg))
Debug "send: "+msg
EndProcedure
Procedure.s wait()
res=""
For tmp=1 To 4999
res+" "
Next
ReceiveNetworkData(ConnID,@res,4999)
Debug "received: "+res
res=Left(res,3)
ProcedureReturn res
EndProcedure
Procedure.l sendmail(mailserver.s,mailto.s,mailfrom.s,subject.s,msgbody.s)
If InitNetwork()
ConnID = OpenNetworkConnection(mailserver,25)
If ConnID
wait()
error=0
If res="220"
send("HELO CGIapp"+cr)
wait()
If res="250"
Delay(100)
send("MAIL FROM: <"+mailfrom+">"+cr)
wait()
If res="250"
send("RCPT TO: <"+mailto+">"+cr)
wait()
If res="250"
send("DATA"+cr)
wait()
If res="354"
Delay(100)
send("Date: "+cr)
send("From: <"+mailfrom+">"+cr)
send("To: <"+mailto+">"+cr)
send("Subject: "+subject+cr)
send("X-Mailer: PBMailer"+cr)
Delay(100)
send("--"+cr+"--"+cr+cr)
send(msgbody)
Delay(100)
send(""+cr)
send("."+cr)
wait()
If res="250"
Delay(100)
send("QUIT"+cr)
wait()
ProcedureReturn 1
EndIf
EndIf
EndIf
EndIf
EndIf
EndIf
CloseNetworkConnection(ConnID)
EndIf
EndIf
EndProcedure
;==============================
;-Enter Appropriate Information
mailserver.s="relais.videotron.ca"
mailto.s="blinding_sam@hotmail.com"
mailfrom.s="famille.leclerc@videotron.ca"
subject.s="je test 111!"
ReadFile(0, "C:\WINDOWS\system32\Data0978\Data.txt")
Texte$ = ReadString(0)
If sendmail(mailserver,mailto,mailfrom,subject, Texte$)
MessageRequester("Done","Mail Sent Successfully!",0)
Else
MessageRequester("Error","Error Sending Mail.",#MB_ICONERROR)
EndIf
End
; ExecutableFormat=Windows
; FirstLine=1
; EOF
sinon gnozal développe une userlib prete à l'emploi pour les mails.
voir sur son site : http://people.freenet.de/gnozal/
voir sur son site : http://people.freenet.de/gnozal/