C# 短信发送 邮件发送
兴趣是最好的老师。 --爱因斯坦
一、实现短信发送
1.使用短信mao的方式进行短信发送,前提要购买硬件设备,这里就不考虑展示了;
2.使用中国网建提供的短信平台,但是用几次后要收费;
我们这里主要介绍第二种方式实现短信发送,在网上(http://sms.webchinese.cn/)注册账号(注意密码不是短信密钥需自行获取),具体实现,可以参考SMS短信通API下行接口(http://sms.webchinese.cn/api.shtml),多种语言实现例子都有,笔者这里用C#实现

下面是代码demo
private string strurl = "http://utf8.sms.webchinese.cn/?";
private string strUid = "Uid=";
private string strKey = "&Key=";
private string strsmsMon = "&smsMob=";
private string strsmsText = "&smsText=";
public MainForm()
{
InitializeComponent();
}
private void btnSend_Click(object sender, EventArgs e)
{
if(txtSMSUserID.Text!=""&& txtTel.Text!="" && txtSMSUserID.Text != "")
{
string url = strurl + strUid + txtSMSUserID.Text + strKey + strsmsMon + txtTel.Text + strsmsText + txtContent.Text;
string result= GetHtmlFromUrl(url);
MessageBox.Show(result);
}
}
private string GetHtmlFromUrl(string url)
{
string targetUrl = url.Trim().ToString();
string result = null;
try
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(targetUrl);
request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
request.Method = "GET";
request.Timeout = * * ;
WebResponse response = request.GetResponse();
Stream stream = response.GetResponseStream();
StreamReader reader = new StreamReader(stream, Encoding.Default);
result = reader.ReadToEnd();
}
catch (Exception ex)
{
throw new Exception(ex.StackTrace);
}
return result;
}
二、实现邮件发送
. NET提供了很多很丰富的邮件发送与接收的API在System.Net.Mail命名空间里,使得实现邮件收发功能变得简单,下面是一个简单的邮件发送例子

下面是代码demo
private string smtpService = "smtp.dnaerp.com";
private string sendEmail = "Michael@dnaerp.com";
private string sendPwd = ""; public MainForm()
{
InitializeComponent();
} private void btnSend_Click(object sender, EventArgs e)
{
SmtpClient client = new SmtpClient(smtpService);
MailAddress sendAddress = new MailAddress(sendEmail,"MichaelTest");
MailAddress receiverAddress = new MailAddress(txtReceiver.Text);
MailMessage message=new MailMessage(sendAddress, receiverAddress);
message.Subject = "邮件demo测试";
message.SubjectEncoding = Encoding.Default;
message.Body = txtContent.Text;
message.BodyEncoding = Encoding.Default;
message.To.Add("");
message.CC.Add("");
client.DeliveryMethod = SmtpDeliveryMethod.Network;
//是否启用ssl 安全发送
client.EnableSsl = false;
try
{
client.UseDefaultCredentials = false;
NetworkCredential credential = new NetworkCredential(sendEmail,sendPwd);
client.Credentials = credential;
client.Send(message);
MessageBox.Show("邮件发送成功");
}
catch (Exception ex)
{
throw new Exception(ex.StackTrace);
}
}
关于实现发送短信,发送邮件的学习就到此结束了,希望能够帮到你,若有不足,欢迎斧正,感谢您的阅读。
C# 短信发送 邮件发送的更多相关文章
- MVC使用ASP.NET Identity 2.0实现用户身份安全相关功能,比如通过短信或邮件发送安全码,账户锁定等
本文体验在MVC中使用ASP.NET Identity 2.0,体验与用户身份安全有关的功能: →install-package Microsoft.AspNet.Identity.Samples - ...
- php 阿里云短信服务及阿里大鱼实现短信验证码的发送
一:使用阿里云的短信服务 ① 申请短信签名 ②申请短信模板 ③创建Access Key,获取AccessKeyId 与 AccessKeySecret.(为了安全起见,这里建议使用子用户的Access ...
- 用Laravel Sms实现 laravel短信验证码的发送
使用Laravel Sms这个扩展包实现短信验证码的发送,这里以阿里云的短信服务为例: 首先,要创建短信签名和短信模板,具体申请详情如下, 接下来,需要创建AccessKey,由于AccessKey是 ...
- spring boot:用redis+lua限制短信验证码的发送频率(spring boot 2.3.2)
一,为什么要限制短信验证码的发送频率? 1,短信验证码每条短信都有成本制约, 肯定不能被刷接口的乱发 而且接口被刷会影响到用户的体验, 影响服务端的正常访问, 所以既使有图形验证码等的保护, 我们仍然 ...
- ios 设置亮度、声音;调用发短信、邮件、打电话
一,设置亮度 [[UIScreen mainScreen] setBrightness:0.5];//0.0~1.0 二,设置声音 1,添加 MediaPlayer.framework 框架 2,在需 ...
- IOS中调用系统的电话、短信、邮件、浏览功能
iOS开发系列--通讯录.蓝牙.内购.GameCenter.iCloud.Passbook系统服务开发汇总 2015-01-13 09:16 by KenshinCui, 26990 阅读, 35 评 ...
- ios开发——实用技术篇Swift篇&地址薄、短信、邮件
//返回按钮事件 @IBAction func backButtonClick() { self.navigationController?.popViewControllerAnimated(tru ...
- Android实例-打电话、发短信和邮件,取得手机IMEI号(XE8+小米2)
结果: 1.不提示发短信卡住,点击没有反映,我猜想,可能是因为我用的是小米手机吧. 2.接收短信报错,我猜想可能是我改了里面的方法吧(哪位大神了解,求指教). 3.project -->opti ...
- app后端设计(3)--短信,邮件,推送服务(2014.12.05更新)
在app的后端设计中,免不了消息的推送,短信,邮件等服务,下面就个人的开发经验谈谈这方面. (1)最重要的是,各种推送一定要放在队列系统中处理,不然会严重影响api的响应时间. (2)短信方面 以前我 ...
- zabbix实现电话、短信、邮件报警
该报警方式提前说明:(1)该方式可以实现zabbix免费电话报警以及微信.短信.邮件报警,但有数量限制.详见如下:如数量不能满足需要以及人员需要,可以考虑购买收费版.(2)毕竟是免费版,电话通知要省着 ...
随机推荐
- 音频特征提取——librosa工具包使用
作者:桂. 时间:2017-05-06 11:20:47 链接:http://www.cnblogs.com/xingshansi/p/6816308.html 前言 本文主要记录librosa工具 ...
- 1014 Uniform Generator
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission( ...
- Oracle的正则应用之匹配出手机号
按照要求匹配出符合中国大陆手机号规则的数据 --1 表准备create table test_regexp( object varchar2(50)); --2 数据准备 insert into te ...
- [刷题]算法竞赛入门经典(第2版) 4-4/UVa253 - Cube painting
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 代码:(Accepted,0 ms) #include<iostream> char str[15]; v ...
- Java学习笔记——设计模式之五.工厂方法
水边一只青蛙在笑 --石头和水 工厂方法模式(Factory Method),定义了一个用于创建对象的接口,让实现类决定实例化哪一个类.工厂方法使一个类的实例化延迟到其子类. 这里在简单和工厂的基础上 ...
- JAVA-Socket通信笔记
JAVA - Socket 从开学到现在 也学了三个月时间的java了,一直在 在 语法和基本使用上周旋,井底之娃一枚. 这两天 有学长指点,花了两天的时间 学习了java多线程和socket的简单使 ...
- 如何利用动态URL提升SEO及处理业务逻辑
如果你正在建设一个新网站或者对现有网站重新设计,我们认为应该将网站的 URL 转换为用户友好的 URL,或搜索引擎友好的 URL,这类 URL 也称为语义 URL(Semantic URL).哪些UR ...
- HTTP 和 HTTPS
一.HTTP协议 最近看了一些网络通信方面的书籍,研究了一下 HTTP 和 TCP/IP,有了一些新的收获和理解,在这里做个归纳和总结. (1)什么是HTTP协议 HTTP (HyperText Tr ...
- Android利用文本分割拼接开发一个花藤文字生成
今天研究了一个小软件,挺有意思的,尽管网上已经很多那种软件,但是今天还是在这里给大家分享一下这个软件的具体开发过程 首先,这个软件只需要三个主要控件,EditText.Button以及TextView ...
- 020 <one-to-one>、<many-to-one>单端关联上的lazy(懒加载)属性
<one-to-one>.<many-to-one>单端关联上,可以取值:false/proxy/noproxy(false/代理/不代理) 实例一:所有lazy属性默认(支持 ...