从Windows应用程序中发送电子邮件

从我们的Windows应用程序发送邮件的Visual Basic。净 System.Net.Mail.MailMessage使用类。

在下面的例子中,我们将创建一个窗体(Form1),一个文本框,键入消息(TextBox1的)和一个按钮(button1)发送短信发送电子邮件。


昏暗作为新System.Net.Mail.MailMessage mymail

 miCorreo.IsBodyHtml = FALSE
 miCorreo.From =“info@solovb.net”“您发送邮件
 correo.To.Add(“usuario@hotmail.com)'邮件收件人
 correo.Subject =“Windows应用程序的测试消息solovb.net]”'案例

 miCorreo.Body = TextBox1.Text'邮件正文

 miCorreo.Priority = System.Net.Mail.MailPriority.Normal优先

暗淡SMTP作为新System.Net.Mail.SmtpClient

 smtp.Host =“smtp.solovb.net”
 “我通过你送的帐号和密码的凭据
 smtp.Credentials =的新System.Net.NetworkCredential(,“info@solovb.net”clave123456“))

尝试
       smtp.Send(mymail)
       MSGBOX(“发送的消息。”MsgBoxStyle.OKOnly,“solovb.net”)
作为例外赶上前
       MSGBOX(“错误:”错误!“&ex.Message,MsgBoxStyle.OKOnly)
最终的结局

事实上这个例子,您可以添加许多功能,如发件人,收件人和SMTP设置文本框。

但对于一个例子(我喜欢)越简单越好你会有时间复杂,哈哈。

如果我们IsBodyHtml属性为True,我们填写HTML代码,使我们的消息得到了更好的外观身体。

如果你担任,发表评论。

50“从Windows应用程序发送电子邮件。”

  1. Bitacoras.com 说:

    信息Bitacoras.com ...

    如果你愿意,你可以点击评价后Bitacoras.com。 谢谢....

  2. 何塞说:

    好。

    一个问题,在下面一行:

    miCorreo.From =“josem.flores @ sfb.es”您发送邮件

    它表明一个类型为“String”的值不能被转换为“System.Net.Mail.MailAdress”

    让我们来看看,如果我可以请帮帮忙。 因为我已经改变了,但我不能修复该错误。

    的问候和感谢

    • 以利沙说:

      你可以用下面的行,以避免错误

      新System.Net.Mail.MailAddress miCorreo.From =(的“josem.flores @ sfb.es”)

      以利沙

  3. 何塞说:

    非常感谢。

    但我有一个问题,我贴上我的代码的问题,并告诉你:

    暗淡作为,新System.Net.Mail.MailMessage _Message()

    昏暗作为新System.Net.Mail.SmtpClient _SMTP

    'STMP设定

    =的新System.Net.NetworkCredential _SMTP.Credentials(“电子邮件帐户”,“密码”)

    _SMTP.Host =“Smtp.gmail.com”

    _SMTP.Port = 465

    _SMTP.EnableSsl = TRUE

    “配置消息

    _message [到]。(“电子邮件帐户”)的邮件帐户,你要发送的电子邮件

    _Message.From =新System.Net.Mail.MailAddress(“电子邮件帐户”,“名”,System.Text.Encoding.UTF8)'发件人

    _Message.Subject =“测试”的电子邮件的主题

    _Message.SubjectEncoding = System.Text.Encoding.UTF8的编码

    _Message.Body =“这是一个测试”'邮件的内容

    _Message.BodyEncoding = System.Text.Encoding.UTF8

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

    _Message.IsBodyHtml = FALSE

    “添加附件

    “昏暗的String = My.Application.Info.DirectoryPath”文件“_file要附加文件

    “DIM作为新System.Net.Mail.Attachment _Attachment(_file,System.Net.Mime.MediaTypeNames.Application.Octet)

    '_Message.Attachments.Add(_Attachment)

    “商船

    尝试

    _SMTP.Send(_Message)

    作为System.Net.Mail.SmtpException赶上前

    “MessageBox.Show(ex.ToString)

    最终的结局

    此代码是确定的。

    现在,当我发送邮件时,我得到以下错误:

    它超过了应用程序的等待时间。

    一个telnet smtp.gmail.com 465连接完美,但它不发送电子邮件...

    我将不胜感激,如果你可以清除你给我一个解决方案,因为我无法得到它...

    一个问候,并感谢你非常提前。

  4. 以利沙说:

    代码是好的,其实我在apliaciones和运行使用。 显然,问题是缺少一些Gmail设置。 与Gmail,我得到一个错误。 如果我做它与Gmail的工作,我将发布的解决方案。

  5. foogeobre说:

    谢谢!

  6. 何塞说:

    确定以利沙。

    我更改了端口为587会不会让我通过telnet,但仍然没有工作......

    我会继续找,如果我告诉他的东西。 我希望您的解决方案,如果它仍然失败。 :D

    非常感谢和问候。

  7. 何塞说:

    的方式。

    你能告诉我任何SMTP服务器能够正常工作,例如与your're运行,需要尽快实现它,我无法找到任何服务器,工作...

    见你做到这一点,我尝试它,如果你能告诉我,如果因此,如果我的工作。 ;)

    再次非常感谢你。

    打了招呼。

  8. 何塞说:

    好。

    现在一切都尘埃落定,这是防病毒程序,削减进行大量邮件的蠕虫问题,必须在例外进程进入正常工作。

    非常感谢。

    打了招呼。

  9. kyha说:

    早晨好。

    我有一个代码非常,非常相似suyo.El问题是我不发送邮件,直到您关闭应用程序,或其他邮件投递entionces后者不发送。你知道为什么或如何我可以解决它?
    谢谢

  10. 卡洛斯说:

    这是一个很好的功能! 感谢与我们一起分享 :D

  11. 马里诺说:

    感谢你分享这段代码......这是推动我疯了没有我出去的邮件。 感谢你的解决了这个错误。 继续努力吧... :)

  12. pharsat说:

    打着招呼,那些无法找到一个SMTP服务器的工作我给一个使用的Windows Live Hotmail的配置,是100%肯定,我离开我的代码以观察。

    请不要修改它的程序代码有关服务器的配置,以避免错误。

    昏暗作为新System.Net.Mail.MailMessage mymail

    miCorreo.IsBodyHtml = FALSE
    miCorreo.From =新System.Net.Mail.MailAddress(“ejemplo@hotmail.com”),从那里发送邮件
    miCorreo.To.Add(“ejemplo@hotmail.com)'邮件收件人
    miCorreo.Subject =“榜样”,“案例
    miCorreo.Body =“你可以把文本或HTML代码的字符串,如果expesificas它将包括消息”
    miCorreo.Priority = System.Net.Mail.MailPriority.Normal优先
    “不修改以下行qye的和微软(的Windows Live SMTP服务器coniguracion的对应)
    暗淡SMTP作为新System.Net.Mail.SmtpClient

    smtp.Host =“smtp.live.com”
    smtp.Port =“25”
    smtp.EnableSsl = TRUE

    “我通过你送的帐号和密码的凭据
    =的新System.Net.NetworkCredential smtp.Credentials(的“ejemplo@hotmail.com”,“密码”)

    尝试
    smtp.Send(mymail)
    MSGBOX(“发送消息”。MsgBoxStyle.OKOnly)
    作为例外赶上前
    MSGBOX(“错误:”)
    最终的结局

    该项目的创建者和最后agredezco我也一样。 谢谢

  13. 奥斯卡说:

    合作伙伴非常感谢你的几个老板真理,担任了我很多的信息。

  14. 贡萨洛说:

    你好,你要么andubo? 是能够发送任何邮件?
    让我的错误,当试图发送电子邮件 :(
    凭据好吗?
    我在哪里可以得到另一个呢?

    的问候。

  15. 亚历杭德罗说:

    对大家都有好处,这篇文章对我帮助很大,但我有一个小问题,我附加文件时,我得到以下错误:回NotSupportedException未处理
    不支持的格式提供路径。

    代码:
    昏暗文件字符串= My.Application.Info.DirectoryPath及“C:\ arcchivo.rar”

    __________________inicio错误的地方品牌
    昏暗的附件作为新System.Net.Mail.Attachment(文件System.Net.Mime.MediaTypeNames.Application.Pdf)
    msg.Attachments.Add(附后)
    __________________fin错误的地方品牌

    如果任何人都可以告诉我,我做错了,我感谢你在前进。

    保持电脑是如此有用。

  16. gianpiere Bernuy拉莫斯说:

    TA HOLA的q TAL chebre您的职位,但对Q,你可以改变
    _SMTP.Port = 465
    通过
    _SMTP.Port = 587
    我说,我运行。
    q运气上帝保佑

  17. 何塞说:

    我测试这段代码,它的工作完美,我SMTP的服务器recomendades Pharsat变化和以利沙注释miCorreo.From =新System.Net.Mail.MailAddress(的“josem.flores @ sfb.es”),并太好了,非常感谢你。

  18. charly说:

    感谢代码

  19. dosmilcero说:

    嘿。

    我已经制定了一项计划,通过SMTP访问Exchange服务器,需要与SSL认证发送。 该项目工程完全从网络交换服务器,但如果我安装在PC上的网络交换服务器,它不工作以外的任何计算机。 总是给服务器找不到错误。

    使用ping服务器从局域网的DNS,IP公共,私人,TELNET等。...... 提供没有任何反应。 在Exchange服务器上的日志什么都不说,很显然,没有人知道。 杀毒软件和防火墙断开任何想法?

  20. 布希女士说:

    q DAS您好Parsat mefunciona代码marabillas,但我有一个问题是,我有一个表格,其中q APODER将提出的任何邮件发送邮件,我可以看到在的脚本espesificar q表单字段知道q会发送E-AQ的消息,此事
    agradeseria你多,如果mepudes ayuadar

  21. 阿图罗说:

    与Windows 7专业不起作用,为什么?

  22. builes朱利安说:

    优秀的代码兄弟

    非常感谢

  23. 克里斯蒂安说:

    大家,并尝试与其他公司的原代码,修改parshat禁用杀毒软件和防火墙,仍然没有给我的代码复制并粘贴领域明显有人可以给我另一种解决方案?

  24. 克里斯蒂安说:

    我再次,如果有人不尝试在Hotmail端口587

  25. 约翰说:

    非常好感谢帮我一个伟大的

  26. 耶稣说:

    嘿。 这是我的第一个步骤,在vb.net中,(到目前为止,到用VB6)。 电子邮件服务器的代码我很好,是很好的例子。 现在,我想复杂的确认,附件等。 我想问一个小东西,你给我一个例子来下载邮件? 非常感谢你的一切。

  27. 莱斯特说:

    阿美族的查询和给我电子邮件的问题是我需要envviar在电子邮件正文中的图像,而不是作为附件(广告型),但没有让我送...... 我有一个RichTextBox中的形象,但不会发送任何东西......如果有人可以帮助我,我将不胜感激

    我的电子邮件是lesterelpepecalderon@hotmail.com的

  28. eigthy说:

    我把一点点比加入到窗体的文本框和一个按钮和一个RichTextBox美容,使网页形式更paresca。 为此,我们将创建:

    Textbox1的(案例)
    TextBox2中(接收机)
    textbox3(电子邮件)
    textbox4(passwor - 密码)
    richTextBox1的(消息)
    Button1的(提交按钮)

    配置到Hotmail,让下面的代码:

    Button1的Click:

    昏暗作为新System.Net.Mail.MailMessage mymail

    miCorreo.IsBodyHtml = FALSE
    miCorreo.From =新System.Net.Mail.MailAddress(TextBox2.Text)'发送邮件地址
    miCorreo.To.Add(TextBox3.Text)“邮件收件人
    miCorreo.Subject = TextBox1.Text“主题
    miCorreo.Body = RichTextBox1.Text
    miCorreo.Priority = System.Net.Mail.MailPriority.Normal优先

    “不修改以下行,因为它们涉及到微软(的Windows Live SMTP服务器coniguracion的)
    暗淡SMTP作为新System.Net.Mail.SmtpClient

    smtp.Host =“smtp.live.com”
    smtp.Port = 25
    smtp.EnableSsl = TRUE

    “我通过你送的帐号和密码的凭据
    =的新System.Net.NetworkCredential smtp.Credentials(TextBox3.Text,TextBox4.Text)

    尝试
    smtp.Send(mymail)
    MSGBOX(“发送消息”。MsgBoxStyle.OKOnly)
    作为例外赶上前
    MSGBOX(“错误:”)
    最终的结局

    因为他们看到遵循的原代码,但代码没有海洋的SMTP Hotmail的设置,我只是说更美的形式,在这个图像显示: http://i46.tinypic.com/34ir2c0.jpg

    我希望,并为他们服务的问候和感谢SoloVB

    我说再见!

  29. sagilman说:

    您好,我得到以下错误,而不是因为他们把所有的代码,因为它是。
    错误的是:
    发送失败的消息。

    谁可以帮我请。

  30. 胡安·米格尔说:

    感谢的贡献muchisisisimo的担任我认真 :)

  31. 雷南·卡多纳说:

    与我奇妙的工作

  32. 索尼娅说:

    你好,我自动发送链接给一个按钮,其中的数据,我带来了在Oracle数据的基础上选择,唯一的问题是一个必须有主题:在文本和链接的愤怒应发送,但不是如何能帮助我!

  33. 费尔南多说:

    嘿我不要误会我的朋友工作毫米

    所以我的codigolo

    公共类Form1

    enviarcorreo公共小组()

    昏暗作为新System.Net.Mail.MailMessage mymail
    miCorreo.IsBodyHtml = FALSE
    miCorreo.From =新System.Net.Mail.MailAddress(“luisfernandop.s @ hotmail.com”),从那里发送邮件
    miCorreo.To.Add(“luisfernandop.s @ hotmail.com”)'邮件收件人
    miCorreo.Subject =“测试FER”“案
    miCorreo.Body =“无”
    miCorreo.Priority = System.Net.Mail.MailPriority.Normal优先
    “不修改以下行qye的和微软(的Windows Live SMTP服务器coniguracion的对应)
    暗淡SMTP作为新System.Net.Mail.SmtpClient

    smtp.Host =“smtp.live.com”
    smtp.Port = 25
    smtp.EnableSsl = TRUE

    “我通过你送的帐号和密码的凭据
    =新System.Net.NetworkCredential smtp.Credentials(“luisfernandop.s @ hotmail.com”,“/ N @ ndo/6724766887”)

    尝试
    smtp.Send(mymail)
    MSGBOX(“发送消息”。MsgBoxStyle.OKOnly)
    作为例外赶上前
    MSGBOX(“错误:”)
    最终的结局
    END SUB

    私人小组中button1_Click(0 System.Object的,BYVAL e由于发件人)把手Button1.Click
    enviarcorreo()

    END SUB
    末级

    如果有人可以让我看到我的错误,我将不胜感激

  34. chocobar克里斯蒂安说:

    muyyyy 10的好作品!...杰出的贡献! 现在我坚持......谢谢你这么多=)

  35. 埃德加说:

    芽通过Pharsat ......
    您的贡献,对我帮助很大...

    感谢所有贡献他们的帮助代码q

  36. 埃德加说:

    您好XFA例如,有人可能会说我做时,我想比其他的hotmail邮件发送邮件..

    如雅虎,Gmail,等等......或我公司的服务器...

  37. leboche说:

    discula 1 dudami这是我的代码:

    昏暗作为新System.Net.Mail.MailMessage mymail
    昏暗的邮件作为新System.Net.Mail.MailMessage
    micorreo.IsBodyHtml = FALSE
    ,新System.Net.Mail.MailAddress micorreo.From =(“leboche@hotmail.com”)
    correo.To.Add(“leboche@hotmail.com”)
    correo.Subject =“消息prueva”

    micorreo.Body = TextBox1.Text

    micorreo.Priority = Net.Mail.MailPriority.Normal

    暗淡SMTP作为新System.Net.Mail.SmtpClient
    smtp.Host =“smtp.live.com”
    smtp.Port = 587
    smtp.EnableSsl = TRUE
    =的新System.Net.NetworkCredential smtp.Credentials(“info@solovb.net”,“123456”)

    尝试
    smtp.Send(mymail)
    MSGBOX(“发送的消息。”MsgBoxStyle.OKOnly,“info@solovb.net”)
    作为例外赶上前
    MSGBOX(“错误:”)

    最终的结局

    但不知道如果此代码,在文本框或从或上一个按钮,你能帮我吗?
    我是一个初学者在ESOT

  38. melesio萨拉斯说:

    一切都太棒了!

    谢谢输入

    问候语

  39. 吉尔默20说:

    有趣sobretod你的例子,很容易理解,但我有一个问题,我想你在邮件正文是报告的内容
    作为dificio是一部分,我希望你的帮助

  40. CarlosH说:

    非常感谢。 一个小的贡献。
    发送一个副本(CC)
    correo.CC.Add(“地址”)

  41. 哈维尔说:

    您好,我有这个问题:

    我说:“没有名字已被宣布放”

    “字符是无效的”,“”旁边放。

    谁可以帮助我非常感谢你。

    • 安德森说:

      替换&

      MSGBOX(“错误:”错误!“&ex.Message,MsgBoxStyle.OKOnly)

  42. 哈维尔说:

    muuuuchas感谢...... 我已经找到了solucioen :)

  43. 哈维尔说:

    您可以添加发送或元素或加入私人档案?

  44. 霍尔迪说:

    感谢你的代码!

    寓言作品!

  45. 马尔塞说:

    您好!
    非常好的页面,
    无论是通过发送邮件的代码quisisera可以传送密件副本密件传给一个正方形,其中有几个更多的电子邮件,是可能的吗?

  46. jhoanna0627说:

    您好:

    感谢您非常送达我奇妙的,谢谢,我终于能够发送邮件,但我有关于如何你把身体连结1 duditas,这样你定制与HTML标签和如何发送1酬谢adjunto.muchas的,在我的工作完美的代码。

评论