[vb.net 2.0]

Résolu
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013 - 16 mars 2006 à 21:31
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013 - 17 mars 2006 à 22:22
Bonjour,

quelqu'un pourrait t'il me montrer comment utiliser l'envoi de mail par smtp avec le namespace System.Net.Mail, je n'arrive pas du tout a concevoir mon code,

je fais au debut:
Dim msg As MailMessage
msg.From = MaTexteBox1.Text
msg.To = MaTexteBox2.Text
...

cela me retourne des erreurs comme ceci:
Error 1 Value of type 'String' cannot be converted to 'System.Net.Mail.MailAddress'. C:\Documents and Settings\Shadow\Mes documents\Visual Studio 2005\Projects\ControlClipBoard\ControlClipBoard\Code\Windevel.vb 32

Error 2 Property 'To' is 'ReadOnly'. C:\Documents and Settings\Shadow\Mes documents\Visual Studio 2005\Projects\ControlClipBoard\ControlClipBoard\Code\Windevel.vb 33

et enfin je ne sais pas comment dire a quel smtp envoyer le mail et comment meme l'envoyer, bref il me faudrai un exemple bien concret svp et comprehensible

Merci d'avance de votre aide

10 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
17 mars 2006 à 21:40
Salut

Friend
Shared
Function SendTeamMessage(
ByVal Pour
As
String,
ByVal Sujet
As
String)
As
Integer


Dim msg
As MailMessage


Dim smtp
As SmtpClient


try

smtp.Host =
"smtp.wanadoo.fr"


msg.From =
New MailAddress(ContactForm.MsgFrom.Text)


msg.To.Add(
New MailAddress(Pour))


msg.Subject = Sujet


msg.Body = ContactForm.MsgToSend.Text


smtp.Send(msg)

catch ex as exception

messagebox.show(ex.message)
end try

End Function

Apres tu as la forme

try

'connexion base de données

'enregistrement base de données

commit en base 'validation

catch ex as exeption

rollback devalidation en base de données

finally

'fermeture connexion

end try

Dans cet exemple si le sql echoue alors l'operation est annulée

et dans tous les cas la connexion à la base est fermée.

espérant avoir éclairci ton probleme
3
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
16 mars 2006 à 21:46
Salut,

je pense qu'il te manque le new.

apres une recherche sur google voici un exemple

Shared Sub Main(ByVal args As String())

Dim msg As MailMessage = New MailMessage

msg.From = "expediteur@free.f"
msg.To = "atoi@free.fr;alui@free.fr"
msg.Cc = "encoreatoi@free.fr"
msg.Body = "Bonjour" & Convert.ToChar(10) & "" + "Ceci est le contenu du mail" & Convert.ToChar(10) & "" + "A bientôt"
msg.Attachments.Add(New MailAttachment("c:\fichierjoint.txt", MailEncoding.UUEncode))
SmtpMail.SmtpServer = "smtp.nerim.fr"
SmtpMail.Send(msg)

End Sub
0
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013
16 mars 2006 à 22:08
justement j'ai vu ce genre de truc partout et en faisant un truc similaire a ton exemple en .Net 2.0 ca fais les erreurs de compilations que j'ai cité, cependant j'ai finalement trouvé le bon truc qui ne me donne aucune erreur, MAIS ce coup ci, plus d'erreur dans le compilateur mais dans le prog en lui meme sur la ligne smtp.Host:

Code;



Friend
Shared
Function SendTeamMessage(
ByVal Pour
As
String,
ByVal Sujet
As
String)
As
Integer



Dim msg
As MailMessage



Dim smtp
As SmtpClient


smtp.Host =
"smtp.wanadoo.fr"


msg.From =
New MailAddress(ContactForm.MsgFrom.Text)


msg.To.Add(
New MailAddress(Pour))


msg.Subject = Sujet


msg.Body = ContactForm.MsgToSend.Text


smtp.Send(msg)



End
Function

Erreur du programme:

Consultez la fin de ce message pour plus de détails sur l'appel du débogage
juste-à-temps (JIT) à la place de cette boîte de dialogue.


************** Texte de l'exception **************
System.NullReferenceException: La référence d'objet n'est pas définie à une instance d'un objet.
à ControlClipBoard.Windevel.SendTeamMessage(String Pour, String Sujet) dans C:\Documents and Settings\Shadow\Mes documents\Visual Studio 2005\Projects\ControlClipBoard\ControlClipBoard\Code\Windevel.vb:ligne 35
à ControlClipBoard.ContactForm.SendMail_Click(Object sender, EventArgs e) dans C:\Documents and Settings\Shadow\Mes documents\Visual Studio 2005\Projects\ControlClipBoard\ControlClipBoard\Winforms\ContactForm.vb:ligne 15
à System.Windows.Forms.Control.OnClick(EventArgs e)
à System.Windows.Forms.Button.OnClick(EventArgs e)
à System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
à System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
à System.Windows.Forms.Control.WndProc(Message& m)
à System.Windows.Forms.ButtonBase.WndProc(Message& m)
à System.Windows.Forms.Button.WndProc(Message& m)
à System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)



************** Assemblys chargés **************
mscorlib
Version de l'assembly : 2.0.0.0
Version Win32 : 2.0.50727.42 (RTM.050727-4200)
CodeBase : [file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll]
----------------------------------------
ControlClipBoard
Version de l'assembly : 1.1.0.5
Version Win32 : 1.1.0.5
CodeBase : [file:///C:/Documents%20and%20Settings/Shadow/Mes%20documents/Visual%20Studio%202005/Projects/ControlClipBoard/ControlClipBoard/bin/Release/ControlClipBoard.exe file:///C:/Documents%20and%20Settings/Shadow/Mes%20documents/Visual%20Studio%202005/Projects/ControlClipBoard/ControlClipBoard/bin/Release/ControlClipBoard.exe]
----------------------------------------
Microsoft.VisualBasic
Version de l'assembly : 8.0.0.0
Version Win32 : 8.0.50727.42 (RTM.050727-4200)
CodeBase : [file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll]
----------------------------------------
System
Version de l'assembly : 2.0.0.0
Version Win32 : 2.0.50727.42 (RTM.050727-4200)
CodeBase : [file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll]
----------------------------------------
System.Windows.Forms
Version de l'assembly : 2.0.0.0
Version Win32 : 2.0.50727.42 (RTM.050727-4200)
CodeBase : [file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll]
----------------------------------------
System.Drawing
Version de l'assembly : 2.0.0.0
Version Win32 : 2.0.50727.42 (RTM.050727-4200)
CodeBase : [file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll]
----------------------------------------
System.Configuration
Version de l'assembly : 2.0.0.0
Version Win32 : 2.0.50727.42 (RTM.050727-4200)
CodeBase : [file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll file:///C:/WINDOWS/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll]
----------------------------------------
System.Xml
Version de l'assembly : 2.0.0.0
Version Win32 : 2.0.50727.42 (RTM.050727-4200)
CodeBase : [file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll file:///C:/WINDOWS/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll]
----------------------------------------
System.Runtime.Remoting
Version de l'assembly : 2.0.0.0
Version Win32 : 2.0.50727.42 (RTM.050727-4200)
CodeBase : [file:///C:/WINDOWS/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll file:///C:/WINDOWS/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll]
----------------------------------------
mscorlib.resources
Version de l'assembly : 2.0.0.0
Version Win32 : 2.0.50727.42 (RTM.050727-4200)
CodeBase : [file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll]
----------------------------------------
System.Windows.Forms.resources
Version de l'assembly : 2.0.0.0
Version Win32 : 2.0.50727.42 (RTM.050727-4200)
CodeBase : [file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_fr_b77a5c561934e089/System.Windows.Forms.resources.dll file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms.resources/2.0.0.0_fr_b77a5c561934e089/System.Windows.Forms.resources.dll]
----------------------------------------


************** Débogage JIT **************
Pour activer le débogage juste-à-temps (JIT), le fichier de configuration pour cette
application ou cet ordinateur (machine.config) doit avoir la valeur
jitDebugging définie dans la section system.windows.forms.
L'application doit également être compilée avec le débogage
activé.


Par exemple :


<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>


Lorsque le débogage juste-à-temps est activé, les exceptions non gérées
seront envoyées au débogueur JIT inscrit sur l'ordinateur
plutôt que d'être gérées par cette boîte de dialogue.
0
troxsa Messages postés 553 Date d'inscription jeudi 28 novembre 2002 Statut Membre Dernière intervention 2 octobre 2016 1
16 mars 2006 à 22:56
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013
17 mars 2006 à 07:24
merci beaucoup, mais une derniere chose, comment savoir si l'email a bien été envoyé ou non

merci d'avance
0
troxsa Messages postés 553 Date d'inscription jeudi 28 novembre 2002 Statut Membre Dernière intervention 2 octobre 2016 1
17 mars 2006 à 09:44
Dans le cas ou il n'est pas envoyer tu auras un message d'erreur
il te faudra le géré avec Try .....

http://www.troxsa.info/
Code Vb.net
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
17 mars 2006 à 10:19
Salut

L'exemple
http://lgmorand.developpez.com/dotnet/mail/

t'aideras peut être
0
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013
17 mars 2006 à 18:59
Bon j'arrive déja a quelque chose de bon, merci beaucoup de votre aide, une derniere chose si possible:
je programmais avant en C, et disons que faire un If ou un switch ou encore meme un while je sais faire, mais un Try je vois pas du tout comment y gerer,
quelqu'un pourrait t'il me faire l'exemple si par exemple il sait que:

System.Net.Mail.SmtpException est l'erreur renvoyé si le smtp ne marche pas, et qu'il n'y a rien de renvoyé si tout est ok,

je pense que ca doit commencer par:

Try smtp.send(msg) mais après :D j'en sais rien du tout

merci de votre aide.
0
troxsa Messages postés 553 Date d'inscription jeudi 28 novembre 2002 Statut Membre Dernière intervention 2 octobre 2016 1
17 mars 2006 à 21:48
Bonne reponse [auteurdetail.aspx?ID=84425 nhervagault]
:) Sinon [auteurdetail.aspx?ID=382579 shadow1779]
tu peux regarder sur different
code sur le net ou meme sur le site de vb france en fesant une recherche a partir du
moteur tu trouveras tres facilement :p

http://www.troxsa.info/
Code Vb.net
0
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013
17 mars 2006 à 22:22
ok merci de votre aide a tous
0
Rejoignez-nous