c#中winform怎么根据邮箱地址和密码一键发送email(email,winform,开发技术)

时间:2024-05-06 23:05:06 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

企业信息化进程中,根据自己的Email地址一键发送邮件,了解发送原理可以批量发送多人邮箱。原来曾经用VB做过群发工资条,效果比较理想,现在使用c#做开发,原理基本一样。

应用的技术:访问邮件服务器发送邮件、文件操作保存默认信息、winform按钮的逻辑操作

效果图:

c#中winform怎么根据邮箱地址和密码一键发送email

核心要点及代码(这里以163为例)

1.发送代码:这是最核心的,注意引用。文本框:发送地址,发送密码,发送服务器,接收地址,发送主题,发送内容。

usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows.Forms;usingSystem.Net.Mail;usingSystem.Text.RegularExpressions;usingSystem.IO;privatevoidbutton1_Click(objectsender,EventArgse){Regexr=newRegex("^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$");if(!(r.IsMatch(tbSend.Text)))//用正则表达式验证邮箱{MessageBox.Show("发送邮箱地址格式不正确!");return;}//生成SmtpClient实例,用它发送电子邮件MailMessagemail=newMailMessage();mail.BodyEncoding=System.Text.Encoding.UTF8;mail.IsBodyHtml=true;mail.From=newMailAddress(tbSend.Text);mail.To.Add(newMailAddress(tbAccep.Text));mail.Subject=tbAcceptS.Text;mail.Body=tbB.Text;//生成SmtpClient实例,用它发送电子邮件//指定SMTP服务器主机SmtpClientclient=newSmtpClient(tbSendS.Text);client.UseDefaultCredentials=false;client.EnableSsl=true;client.Credentials=newSystem.Net.NetworkCredential(tbSend.Text.Substring(0,tbSend.Text.IndexOf('@')),tbSendP.Text);client.DeliveryMethod=SmtpDeliveryMethod.Network;try{client.Send(mail);MessageBox.Show("发送成功");}catch(Exceptionex){MessageBox.Show("发送失败"+ex.Message.ToString());}}

2.配置了一些方便操作的功能,比如可以把默认发送地址密码保存在文件中,每次可以提取,还可以随时修改默认地址和密码。对winform的美观性做了强化。这里展示一些代码。有2个文本框是隐藏的,为了输入默认地址。一键可以现实。

这2个是修改默认地址的代码

privatevoidbutton3_Click(objectsender,EventArgse){if(n%2==0){textBox1.Visible=true;textBox2.Visible=true;stringfileName=Environment.CurrentDirectory+"\\myText"+".txt";if(System.IO.File.Exists(fileName)){varlines=File.ReadAllLines(@fileName);stringstr0=lines[0];stringstr1=lines[1];textBox1.Text=str0;textBox2.Text=str1;}n++;button3.Text="确认修改";}else{if(writefile(textBox1.Text,textBox2.Text)){textBox1.Visible=false;textBox2.Visible=false;n++;button3.Text="修改默认";}}}privatestaticboolwritefile(stringname,stringpassword){stringfileName=Environment.CurrentDirectory+"\\myText"+".txt";if(System.IO.File.Exists(fileName)){File.Delete(fileName);}StreamWritersw=File.AppendText(fileName);sw.WriteLine(name);sw.WriteLine(password);sw.Flush();sw.Close();returntrue;}
 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:c#中winform怎么根据邮箱地址和密码一键发送email的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:go怎么压缩和解压zip文件下一篇:

12 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18