Stuur een e-mail van een Windows-toepassing

E-mail verzenden van onze Windows-toepassing in Visual Basic. NET System.Net.Mail.MailMessage gebruik maken van de klasse.

Voor het volgende voorbeeld maken we een formulier (Form1), een tekstvak om het bericht te typen (TextBox1) en een knop (Button1) om tekst te sturen naar de e-mail te sturen.


 Dim As New System.Net.Mail.MailMessage mymail

 miCorreo.IsBodyHtml = False
 miCorreo.From = "info@solovb.net" 'e-mail waar u verzendt
 correo.To.Add ("usuario@hotmail.com") 'E-mailadres
 correo.Subject = "Test bericht van Windows-toepassing [solovb.net]" 'Case

 miCorreo.Body = TextBox1.Text 'Message Body

 miCorreo.Priority = System.Net.Mail.MailPriority.Normal 'Prioriteit

 Dim smtp As New System.Net.Mail.SmtpClient

 smtp.Host = "smtp.solovb.net"
 'Ik passeer de referenties voor de account en het wachtwoord waarmee u gestuurd
 smtp.Credentials = Nieuwe System.Net.NetworkCredential ("info@solovb.net" "clave123456"))

 Proberen
       smtp.Send (mymail)
       MsgBox ("Bericht verzonden". MsgBoxStyle.OKOnly, "solovb.net")
 Catch ex als uitzondering
       MsgBox ("ERROR:" "! Error" & ex.Message, MsgBoxStyle.OKOnly,)
 End Try

Het feit dat je veel functionaliteit toe te voegen aan dit voorbeeld als tekstvakken voor de afzender, ontvanger en SMTP-instellingen.

Maar voor een voorbeeld (als ik wil), hoe eenvoudiger hoe beter je wordt ... is er tijd om het te ingewikkeld haha ​​zijn,.

Als we goed IsBodyHtml op True, vullen we het lichaam met HTML-code, zodat onze boodschap een betere uitstraling gekregen.

Als u geserveerd, reactie geplaatst.

50 Reacties op "e-mail verzenden vanuit een Windows-toepassing"

  1. Informatie Bitacoras.com ...

    Als u wilt, kunt u klikken op dit bericht Bitacoras.com beoordelen. Dankzij ....

  2. Jose zegt:

    Goed.

    Een vraag, in de volgende regel:

    miCorreo.From = "josem.flores @ sfb.es" 'e-mail waar u verzendt

    Het geeft aan dat de waarde van het type "String" niet kan worden omgezet in 'System.Net.Mail.MailAdress'

    Laten we eens kijken of ik er dan aan mee. Sinds ik ben veranderd, maar ik kan het niet maken die fout.

    Een groet en dank

    • Elisa zegt:

      kunt u de volgende regel toe fouten te voorkomen

      New System.Net.Mail.MailAddress miCorreo.From = ("josem.flores @ sfb.es")

      Elisa

  3. Jose zegt:

    Heel hartelijk bedankt.

    Maar ik heb een probleem, ik plak mijn code en vertel je het probleem:

    Dim As New System.Net.Mail.MailMessage _Message ()

    Dim As New System.Net.Mail.SmtpClient _SMTP

    'SMTP-INSTELLINGEN

    = Nieuwe System.Net.NetworkCredential _SMTP.Credentials ("e-mail account", "password")

    _SMTP.Host = "Smtp.gmail.com"

    _SMTP.Port = 465

    _SMTP.EnableSsl = True

    'Configuratiebericht

    _Message. [Aan]. Toevoegen ("mail account") 'mailadres waarnaar u de e-mail

    _Message.From = Nieuwe System.Net.Mail.MailAddress ("e-mail account", "naam", System.Text.Encoding.UTF8) 'De afzender

    _Message.Subject = "Test" 'Onderwerp van de e-mail

    _Message.SubjectEncoding = System.Text.Encoding.UTF8 'Codering

    _Message.Body = "Dit is een test" "inhoud van de e-mail

    _Message.BodyEncoding = System.Text.Encoding.UTF8

    '_Message.Priority = System.Net.Mail.MailPriority.Normal

    _Message.IsBodyHtml = False

    'Bijlagen toevoegen

    'Dim _file As String = My.Application.Info.DirectoryPath & "bestand" "bestand dat u wilt bijvoegen

    'Dim As New System.Net.Mail.Attachment _Attachment (_file, System.Net.Mime.MediaTypeNames.Application.Octet)

    '_Message.Attachments.Add (_Attachment)

    'VERZENDING

    Proberen

    _SMTP.Send (_Message)

    Catch ex Als System.Net.Mail.SmtpException

    'MessageBox.Show (ex.ToString)

    End Try

    Deze code is ok.

    Nu, als ik mail krijg ik de volgende foutmelding:

    Het overtrof de wachttijd van de aanvraag.

    Het maken van een telnet smtp.gmail.com 465 sluit perfect, maar het is niet de e ...

    Ik zou het waarderen als je kunt duidelijk je, geef mij een oplossing want ik kan het niet krijgen ...

    Een groet en hartelijk dank bij voorbaat.

  4. Elisa zegt:

    De code is goed, in feite heb ik het te gebruiken in apliaciones en hardlopen. Blijkbaar ligt het probleem bij een aantal Gmail-instellingen die ontbreken. Met gmail krijg ik een foutmelding. Als ik het te laten werken met Gmail, dan post ik de oplossing.

  5. foogeobre zegt:

    Dank je wel!

  6. Jose zegt:

    Ok Elisa.

    Ik verander de poort als de 587 zou me niet laten krijgen via telnet, maar nog steeds niet werken ...

    Ik zal blijven kijken en als ik vertel hem iets. En ik hoop dat uw oplossing als het nog niet lukt. : D

    Hartelijk dank en vriendelijke groeten.

  7. Jose zegt:

    Overigens.

    Kunt u mij vertellen een SMTP-server die goed werkt met Je bent het lopen bijvoorbeeld, nodig om het te implementeren zo snel mogelijk en ik kan niet vinden elke server die werkt ...

    Kijk of je me kunt vertellen met wie je het doet en ik probeer het en kijk of dus als ik werk. ;)

    Hartelijk dank weer.

    Een groet.

  8. Jose zegt:

    Goed.

    Nu is alles geregeld, was het probleem van de antivirusprogramma's die worm het uitvoeren van een massa-mailing snijden ... moet worden ingevoerd in de uitzonderingen proces en werkt naar behoren.

    Heel hartelijk bedankt.

    Een groet.

  9. kyha zegt:

    Goedemorgen.

    Ik heb een code zeer, zeer vergelijkbaar met suyo.El Probleem is dat ik geen mail te sturen totdat u de toepassing sluit, of een andere postbezorging entionces laatste is niet verzonden. Wil je weten waarom of hoe ik kan oplossen?
    Bedankt

  10. Carlos zegt:

    Dit is een zeer goede functie! bedankt voor het delen van deze met ons te : D

  11. Marino zegt:

    Bedankt voor het delen van deze code ... Het werd me gek en niets ging ik de e-mail. Dankzij jou opgelost de fout. Keep it up ... :)

  12. Pharsat zegt:

    hallo, voor degenen die niet kunnen vinden van een SMTP-server die werkt geef ik een configuratie die wordt gebruikt met Windows Live Hotmail, is 100% zeker van dat ik laat mijn code te observeren.

    Gelieve niet te wijzigen zijn programma-code met betrekking tot de configuratie van de server om fouten te voorkomen.

    Dim As New System.Net.Mail.MailMessage mymail

    miCorreo.IsBodyHtml = False
    miCorreo.From = Nieuwe System.Net.Mail.MailAddress ("ejemplo@hotmail.com") heb e-mail verzenden van waar
    miCorreo.To.Add ("ejemplo@hotmail.com") 'E-mailadres
    miCorreo.Subject = "voorbeeld" 'Case
    miCorreo.Body = "kun je een reeks van tekst of html code als expesificas zal de boodschap zijn"
    miCorreo.Priority = System.Net.Mail.MailPriority.Normal 'Prioriteit
    'Heeft geen invloed op de volgende regels qye en komen overeen met de SMTP-server coniguracion van Microsoft (Windows Live)
    Dim smtp As New System.Net.Mail.SmtpClient

    smtp.Host = "smtp.live.com"
    smtp.Port = "25"
    smtp.EnableSsl = True

    'Ik passeer de referenties voor de account en het wachtwoord waarmee u gestuurd
    = Nieuwe System.Net.NetworkCredential smtp.Credentials ("ejemplo@hotmail.com", "password")

    Proberen
    smtp.Send (mymail)
    MsgBox ("Bericht verzonden". MsgBoxStyle.OKOnly)
    Catch ex als uitzondering
    MsgBox ("ERROR:")
    End Try

    en laatste agredezco aan de maker van het item geserveerd ik ook. bedankt

  13. oscar zegt:

    PARTNERS hartelijk dank zijn een paar bazen waarheid die diende mij veel informatie.

  14. Gonzalo zegt:

    Hallo, je ofwel andubo? , Was in staat om een ​​mail te sturen?
    Ik krijg mijn foutmelding als ik probeer een email te sturen (
    de geloofsbrieven in orde?
    of waar kan ik een ander?

    Groeten.

  15. Alejandro zegt:

    Goed voor iedereen, dit bericht heeft me veel geholpen, maar ik heb een klein probleem als ik een bestand toevoegt, krijg ik de volgende fout: NotSupportedException werd niet-afgehandelde
    Niet-ondersteunde vorm van de in het pad.

    Code:
    Dim bestand As String = My.Application.Info.DirectoryPath & "c: \ arcchivo.rar"

    __________________inicio bug waar merk
    Dim bevestiging als nieuwe System.Net.Mail.Attachment (bestand, System.Net.Mime.MediaTypeNames.Application.Pdf)
    msg.Attachments.Add (bevestigd)
    __________________fin bug waar merk

    als iemand mij kan vertellen ik verkeerd doe ik u bij voorbaat bedanken.

    Houd pc's zijn zo behulpzaam.

  16. Gianpiere Bernuy Ramos zegt:

    ta hola q tal chebre uw post, maar voor de q werkt voor u kunt de
    _SMTP.Port = 465
    door
    _SMTP.Port = 587
    voor mij dat ik zonder.
    q geluk God bless

  17. jose zegt:

    Ik testte deze code en het werkte perfect, ik heb de wijzigingen in de SMTP-server recomendades Pharsat en annotatie door Elisa op miCorreo.From = New System.Net.Mail.MailAddress ("josem.flores @ sfb.es") en was geweldig, dank u zeer.

  18. Charly zegt:

    Bedankt voor de code

  19. dosmilcero zegt:

    Hey.

    Ik heb een programma ontwikkeld om te versturen via SMTP toegang te krijgen tot een Exchange-server die authenticatie met SSL vereist. Het programma werkt perfect vanaf een computer buiten het netwerk waar de exchange server, maar als ik het installeren op een PC-netwerk exchange server werkt niet. Geef altijd de server niet gevonden.

    Met behulp van PING naar de server van de LAN aan de DNS, IP-publieke, private, telnet, etc. .. mits geen reactie. Op de Exchange-server log zegt niets, het is duidelijk dat niemand weet. Antivirus-en firewall uitgeschakeld het even welke ideeën?

  20. Fredy zegt:

    q das hi Parsat mefunciona code van marabillas maar ik heb een probleem ik heb een formulier waar q APODER zal elke e-mail te maken aan het bericht wilt verzenden, als ik me kan in het script espesificar q zie de formuliervelden om te weten q sturen e-aq het bericht, de zaak
    agradeseria u veel als mepudes ayuadar

  21. Arturo zegt:

    Met Windows 7 Professional werkt niet, waarom?

  22. Builes Julian zegt:

    Uitstekende code broer

    veel dank

  23. Cristian zegt:

    Hallo iedereen en probeer de originele code, de wijziging van Parshas met de andere bedrijfs-en uitschakelen van de antivirus-en firewall en nog steeds niet het sturen van de code te kopiëren en te plakken met de velden voor de hand liggende kan iemand mij een andere oplossing ?

  24. Cristian zegt:

    Ik weer als iemand niet proberen de poort 587 in hotmail

  25. john zegt:

    Was zeer goed dankzij dit heeft me geholpen een grote

  26. Jezus zegt:

    Hey. Dit zijn mijn eerste stappen in vb.net, (tot nu toe in met VB6). De code op de server e-mail me goed, is zeer goed voorbeeld van. Nu wil ik de verklaringen, bijlagen, etc. bemoeilijken. Ik wilde een klein ding te vragen Kunt u mij een voorbeeld om mail te downloaden? Hartelijk dank voor alles.

  27. Lester zegt:

    ami een query en stuur mij e-mailt het probleem is ik nodig heb envviar een afbeelding in de e-mail het lichaam niet als bijlage (type reclame), maar liet me niet te sturen .. Ik heb in een RichTextBox het beeld, maar niet sturen niets ... als iemand mij kan helpen zou ik zeer op prijs

    mijn email is lesterelpepecalderon@hotmail.com

  28. Eigthy zegt:

    Ik heb een beetje meer dan het toevoegen van schoonheid aan tekstvak van het formulier en een knop en een RichTextBox zodat er meer paresca een webformulier. Hiervoor zullen we te maken:

    TextBox1 (zaak)
    Textbox2 (ontvanger)
    Textbox3 (uw e-mail)
    Textbox4 (passwor - wachtwoord)
    RichTextBox1 (bericht)
    Button1 (submit knop)

    is geconfigureerd naar Hotmail, laat hieronder de code:

    Button1 klikt u op:

    Dim As New System.Net.Mail.MailMessage mymail

    miCorreo.IsBodyHtml = False
    miCorreo.From = Nieuwe System.Net.Mail.MailAddress (TextBox2.Text) 'stuurt e-mailadres waar
    miCorreo.To.Add (TextBox3.Text) 'E-mailadres
    miCorreo.Subject = TextBox1.Text 'subject
    miCorreo.Body = RichTextBox1.Text
    miCorreo.Priority = System.Net.Mail.MailPriority.Normal 'Prioriteit

    'Heeft geen invloed op de volgende regels als zij betrekking hebben op de SMTP-server coniguracion van Microsoft (Windows Live)
    Dim smtp As New System.Net.Mail.SmtpClient

    smtp.Host = "smtp.live.com"
    smtp.Port = 25
    smtp.EnableSsl = True

    'Ik passeer de referenties voor de account en het wachtwoord waarmee u gestuurd
    = Nieuwe System.Net.NetworkCredential smtp.Credentials (TextBox3.Text, TextBox4.Text)

    Proberen
    smtp.Send (mymail)
    MsgBox ("Bericht verzonden". MsgBoxStyle.OKOnly)
    Catch ex als uitzondering
    MsgBox ("ERROR:")
    End Try

    zoals zij het ​​zien volgt u de originele code maar de code deed Marine SMTP-instellingen voor hotmail Ik zeg alleen maar meer schoonheid aan de vorm zoals weergegeven in deze afbeelding: http://i46.tinypic.com/34ir2c0.jpg

    Ik hoop en serveer ze groeten en dank SoloVB

    Ik zeg tot ziens!

  29. sagilman zegt:

    Hallo, ik krijg de volgende foutmelding en niet omdat ze zetten alle code zoals het is.
    de fout is:
    Het niet versturen van bericht.

    iemand die mij kan helpen neem dan.

  30. Juan Miguel zegt:

    dank voor de bijdragen muchisisisimo geserveerd mij serieus :)

  31. Renan Cardona zegt:

    Bij mij werkte het wonderwel

  32. sonia zegt:

    Hallo, Ik stuur een link automatisch het geven van een knop waar de gegevens moet ik meenemen een select in Oracle database, het enige wat is een must have voor; onderwerp: woede in de tekst en de link dienen te worden gezonden, maar niet hoe kan mij helpen!

  33. Fernando zegt:

    hey vrienden ik niet verwarren mij werkte mm

    dus ik heb de codigolo

    Public Class Form1

    Enviarcorreo Public Sub ()

    Dim As New System.Net.Mail.MailMessage mymail
    miCorreo.IsBodyHtml = False
    miCorreo.From = Nieuwe System.Net.Mail.MailAddress ("luisfernandop.s @ hotmail.com") heb e-mail verzenden van waar
    miCorreo.To.Add ("luisfernandop.s @ hotmail.com") 'E-mailadres
    miCorreo.Subject = "test fer" 'Case
    miCorreo.Body = "none"
    miCorreo.Priority = System.Net.Mail.MailPriority.Normal 'Prioriteit
    'Heeft geen invloed op de volgende regels qye en komen overeen met de SMTP-server coniguracion van Microsoft (Windows Live)
    Dim smtp As New System.Net.Mail.SmtpClient

    smtp.Host = "smtp.live.com"
    smtp.Port = 25
    smtp.EnableSsl = True

    'Ik passeer de referenties voor de account en het wachtwoord waarmee u gestuurd
    = Nieuwe System.Net.NetworkCredential smtp.Credentials ("luisfernandop.s @ hotmail.com", "/ n @ ndo/6724766887")

    Proberen
    smtp.Send (mymail)
    MsgBox ("Bericht verzonden". MsgBoxStyle.OKOnly)
    Catch ex als uitzondering
    MsgBox ("ERROR:")
    End Try
    End Sub

    Private Sub Button1_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    enviarcorreo ()

    End Sub
    End Class

    als iemand zou kunnen maken me mijn fout ik zou het zeer op prijs

  34. Chocobar Cristian zegt:

    Muyyyy goede werken van de 10! ... Prima bijdrage! Nu heb ik houden hand ... Dank je wel =)

  35. Edgar zegt:

    Schiet door Pharsat ..
    Uw bijdrage heeft me veel geholpen ...

    Dank aan allen die een bijdrage leveren met hun hulp zowel code q

  36. Edgar zegt:

    Hallo xfa bijvoorbeeld iemand zou kunnen zeggen zoals ik doe wanneer ik wil berichten van andere e-mail dan hotmail sturen ..

    zoals Yahoo, Gmail, etc. ... of mijn bedrijf server ...

  37. leboche zegt:

    Discula een dudami dit is mijn code:

    Dim As New System.Net.Mail.MailMessage mymail
    Dim mail As New System.Net.Mail.MailMessage
    micorreo.IsBodyHtml = False
    New System.Net.Mail.MailAddress micorreo.From = ("leboche@hotmail.com")
    correo.To.Add ("leboche@hotmail.com")
    correo.Subject = "bericht prueva"

    micorreo.Body = TextBox1.Text

    micorreo.Priority = Net.Mail.MailPriority.Normal

    Dim smtp As New System.Net.Mail.SmtpClient
    smtp.Host = "smtp.live.com"
    smtp.Port = 587
    smtp.EnableSsl = True
    = Nieuwe System.Net.NetworkCredential smtp.Credentials ("info@solovb.net", "123456")

    Proberen
    smtp.Send (mymail)
    MsgBox ("Bericht verzonden". MsgBoxStyle.OKOnly, "info@solovb.net")
    Catch ex als uitzondering
    MsgBox ("Fout:")

    End Try

    maar weet niet of deze code in het tekstveld in of uit of op een knop kun je me helpen?
    Ik ben een beginner in ESOT

  38. Melesio Salas zegt:

    Alles ging geweldig!

    Bedankt voor de input

    Een van de Groet

  39. Gilmer 20 zegt:

    interessant sobretod uw voorbeeld en gemakkelijk te begrijpen, maar ik heb een vraag, ik wil dat je in de mail het lichaam is de inhoud van een verslag
    als dificio deel uitmaakt, ik hoop dat je hulp

  40. CarlosH zegt:

    Heel hartelijk bedankt. Een kleine bijdrage.
    Om te sturen met een kopie (CC) =
    correo.CC.Add ("Adres")

  41. Javier zegt:

    Hallo, Ik heb dit probleem:

    Ik zei: "Geen naam is uitgeroepen amp"
    en
    "Karakter is niet geldig" door de "" naast de versterker.

    wie kan mij helpen dank u zeer.

  42. Javier zegt:

    Muuuuchas dank .. Ik heb de solucioen :)

  43. Javier zegt:

    Je zou kunnen toevoegen als thuis-of-element of als het toevoegen van particuliere archieven?

  44. Jordi zegt:

    Ik dank u allen voor de code!

    fabel werkt!

  45. Marce zegt:

    Hallo,
    heel goede pagina,
    quisisera hetzij door middel van de code voor het verzenden van e-mail kan een blinde kopie BCC te versturen naar een plein, waar er nog een aantal e-mails, is dat mogelijk?

  46. jhoanna0627 zegt:

    hello:

    dank u wel gediend me heerlijk, dank u, ik was eindelijk in staat om mail te verzenden, maar ik heb een duditas met betrekking tot hoe je een link in het lichaam, op die manier je aanpassen met html tags en hoe u een bedankje adjunto.muchas te sturen, de Ik werkte perfect code.

Commentaar