C#开发基于ESMTP协议的邮件发送系统经验总结
try
{
tc = new TcpClient(mailserver, mailserverport);
}
catch (Exception e)
{
errmsg = e.ToString();
return false ;
}
ns = tc.GetStream();
/// 接收SMTP服务器回应
/// </summary>
protected string RecvResponse()
{
int StreamSize;
string ReturnValue = " false " ;
byte [] ReadBuffer = new byte [ 4096 ];
try
{
StreamSize = ns.Read(ReadBuffer, 0 , ReadBuffer.Length);
}
catch
{
errmsg = " 网络连接错误 " ;
return ReturnValue;
}
if (StreamSize == 0 )
{
return ReturnValue;
}
else
{
ReturnValue = Encoding.Default.GetString(ReadBuffer).Substring( 0 , StreamSize).Trim(); ;
// logs+=ReturnValue;
return ReturnValue;
}
}
/// 发送SMTP命令
/// </summary>
protected bool SendCommand( string Command)
{
byte [] WriteBuffer;
if (Command == null || Command.Trim() == "" )
{
return true ;
}
// logs+=Command;
WriteBuffer = Encoding.Default.GetBytes(Command);
try
{
ns.Write(WriteBuffer, 0 , WriteBuffer.Length);
}
catch
{
errmsg = " 网络连接错误 " ;
return false ;
}
return true ;
}
SendBufferstr = " MAIL FROM:< " + From + " > " + enter;
if ( ! Dialog(SendBufferstr, " 发件人地址错误,或不能为空 " ))
return false ;
// 收件人列表
SendBuffer.Clear();
foreach (String item in Recipient)
{
SendBuffer.Add( " RCPT TO:< " + item + " > " + enter);
RecipientName = item; // 这里其实只能支持一个收件人
}
if ( ! Dialog(SendBuffer, " 收件人地址有误 " ))
return false ;
C#开发基于ESMTP协议的邮件发送系统经验总结相关推荐
- 【总结】开发基于XMPP协议的通讯工具
转载请注明出处:http://blog.csdn.net/chziroy/article/details/30047889 初学android,做了一个基于XMPP协议的即时通讯工具,实现了基本的文字 ...
- 面试官:使用SpringBoot如何开发邮件发送系统?
作者 | yizhiwazi 来源 | www.jianshu.com/p/5eb000544dd7 SpringBoot 开发邮件发送系统还是比较方便的,在开始之前我们先来了解一下和发送邮件有关的基 ...
- workerman-chat(PHP开发的基于Websocket协议的聊天室框架)(thinkphp也是支持socket聊天的)...
workerman-chat(PHP开发的基于Websocket协议的聊天室框架)(thinkphp也是支持socket聊天的) 一.总结 1.下面链接里面还有一个来聊的php聊天室源码可以学习 2. ...
- java xmpp即时通讯_基于XMPP协议即时通讯工具开发总结
一.概要 转眼毕业了,毕业设计的课题是"基于XMPP协议的通讯工具",开发平台式android,实现了基本的离线消息,文字聊天,表情聊天,文件传输,语音聊天的功能. 本文主要介绍开 ...
- 基于MQTT协议的WZ指令开发V3.0版本支持onenet
title: 基于MQTT协议的WZ指令开发V3.0版本支持onenet tags: WZ指令 date: 2019-02-18 10:53:00 视频讲解:(V3.0版本)-https://www. ...
- iOS开发笔记--基于面向协议MVP模式下的软件设计
传统模式下的开发 MVC MVVM 基于面向协议MVP的介绍 MVP实战开发 说在前面: 相信就算你是个iOS新手也应该听说过MVC的,MVC是构建iOS App的标准模板.随着时间的推移,在iOS ...
- 基于SECS协议开发的简明教程
很有必要把苦程序员久矣的SECS/GEM了结了,于是诞生了本系列文章八篇和开发包,不需要看近500页PDF就可以轻松完成SECS功能支持. 0.SECS SDK 开发包 这个开发包是对SEMI SEC ...
- 基于SECS协议开发的简明教程(7)
接着前面6篇SECS/GEM开发教程系列. 基于SECS协议开发的简明教程(1)-怎么搭建支持SECS工程 基于SECS协议开发的简明教程(2)-怎么编辑交换数据的ID 基于SECS协议开发的简明教程 ...
- 基于SECS协议开发的简明教程(6)
接着前面的五篇SECS/GEM协议开发的系列文章,继续讲本SECS SDK的以下几个功能 怎么触发警报.解除警报(EQP端) 怎么定义Trace(Host端),怎么触发Trace数据(EQP端) 怎么 ...
最新文章
- 论文不公开代码,应该被直接拒稿?
- easyUI清除序号
- 深度玩转神经网络——基于Keras
- 一种定位内存泄露的方法(Linux)
- Python - - 项目实战 -- pygame 快速入门
- 实现JavaSrcipt页面的跳转
- CentOS 6.5系统安装配置图解教程(详细图文)
- wxWidgets:使用文本模板
- Java中的异常处理机制
- LeetCode 547. 朋友圈(图的遍历BFS DFS)
- Sublime Text 3配置与vim模式(待完整)
- 机器学习算法中的偏差-方差权衡(Bias-Variance Tradeoff)
- 有一定基础学python_有一定编程基础,有什么好的自学python的教程吗?
- matlab2c使用c++实现matlab函数系列教程-real函数
- 现在一行代码允许长度,80太少,120才算正常
- 【2017-2018 ACM-ICPC, Central Europe Regional Contest (CERC 17)】Justified Jungle【树上思维题】
- 实现自动发送QQ消息的简单vbs小程序
- 原创:AIR202连接阿里云调试纪实1
- 华硕主板前置音频设置
- js实现页面打印及bugger
热门文章
- MySQL数据库中插入图片
- Qt的QImage类
- 网上不需要实名的物联卡能用吗?有什么安全隐患?
- 关于TreeView的简单使用(Qt6.4.1)
- 软件测试--测试用例
- word2013表格文字上下居中
- Android 8遇到的问题cat: /system/build.prop: Permission denied,如果不root,有方法解决吗?
- Graphql中我们应该用什么姿势来实现Resolver?
- 驱动之家驱动界定说明
- 白盒测试哪种测试效果好_软件测试选择哪种测试方法比较好?