当前位置:  开发笔记 > 编程语言 > 正文

如何从我的C#应用​​程序发送电子邮件?

如何解决《如何从我的C#应用​​程序发送电子邮件?》经验,为你挑选了1个好方法。

这是我写的代码:

        MailMessage mail = new MailMessage("test@gmail.com", "me@myurl.com");

        mail.Subject = "This is a test!!";
        mail.Body = "testing...";

        SmtpPermission connectAccess = new SmtpPermission(SmtpAccess.Connect);
        System.Console.WriteLine("Access?  " + connectAccess.Access);

        SmtpClient client = new SmtpClient("mail.myurl.com", 2525);
        client.Send(mail);

它不起作用.我在"client.Send(mail)"行显示"邮箱不可用.服务器响应是(MYLOCALCOMPUTERNAME)[我的本地IP]:3045目前不允许中继通过."

connectAccess.Access确实返回"连接"(我不确定这是否必要......我已将其添加进入以启动故障排除过程.)

这是否意味着我的本地机器必须以某种方式配置?当我将我的应用程序部署到其他人机器时呢?那里需要本地配置吗?我只是想从我的应用程序创建一个"发送反馈"类型的链接.

(注意:在我的实际应用程序中,我使用的是"to"和"from"中的真实电子邮件地址,而我的smtp实际上是我托管我的网址/网站的地方的smtp地址)

谢谢!

-Adeena



1> adeena..:

@Michael:谢谢你的链接.这非常有帮助.

我弄明白了我的问题.在创建"客户端"对象后,我确实需要添加登录凭据.我添加了以下行:

 client.Credentials = new System.Net.NetworkCredential("myloginat+myurl.com", "mypassword");

(对不起 - 我有这个习惯,我在网上搜索答案后,通过我的手册2小时后,我终于打破并发布问题,然后5分钟后弄明白.:)我认为写作的行为这个问题比其他任何事都更有帮助)

所以它正在工作......虽然我不会声称我理解它的工作方式和原因,所以我确实会遇到一些问题,因为我将程序交给其他人使用.即,每个使用具有互联网连接的程序的人都能够打开这个smtp连接到我的服务器吗?我不知道答案......我将不得不等待,看到并学习更多.

谢谢!:)

-Adeena

推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有