`
mengdejun
  • 浏览: 405329 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

.net c# socket 发送邮件(Demo)

    博客分类:
  • .Net
阅读更多
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Mail;
using System.Text;
namespace whsvc 
{
    namespace CMail
    {
        public class CMail
        {
            private String servername, body, attachpath, from_address, to_address, subject, encdoing = "GB2312";
            private MailMessage message = null;
            private bool isBcc = false;
            private SmtpClient client = null;
            private String username, password;
             public String Username
            {
                set { this.username = value; }
                get { return this.username; }
            }
            public String Password
            {
                set { this.password = value; }
                get { return this.password; }
            }
           public String Body
            {
                set { this.body = value; }
                get { return this.body; }
            }
            public String Server
            {
                set { this.servername = value; }
                get { return this.servername; }
            }
            public String FileName
            {
                set { this.attachpath = value; }
                get { return this.attachpath; }
            }
            public String From
            {
                set { this.from_address = value; }
                get { return this.from_address; }
            }
            public String To
            {
                set { this.to_address = value; }
                get { return this.to_address; }
            }
            public String Subject
            {
                set { this.subject = value; }
                get { return this.subject; }
            }
            public String Encoding
            {
                set { this.encdoing = value; }
                get { return this.encdoing; }
            }


            public CMail(String username, String password, String servername)
            {
                this.username = username;
                this.password = password;
                this.servername = servername;
            }
            public CMail()
            {

            }
            private bool parse()
            {
                bool success = false;
                if (from_address.Length != 0)
                {
                    if (to_address.Length != 0)
                    {
                        message = new MailMessage(this.from_address, this.to_address, subject, body);
                        message.BodyEncoding = System.Text.Encoding.Default;
                        if (this.attachpath != null) 
                        {
                            if (this.attachpath.Length != 0)
                            {
                                try
                                {
                                    message.Attachments.Add(new Attachment(this.attachpath));
                                }
                                catch (Exception e)
                                {
                                    throw new Exception(e.Message);
                                }
                            }
                        
                        }
                        message.Priority = MailPriority.Normal;
                        if (this.servername.Length != 0)
                        {
                            client = new SmtpClient(this.servername);
                            if (this.username.Length != 0 && this.password.Length != 0)
                            {
                                client.Credentials = new NetworkCredential(this.username, this.password);
                                success = true;
                            }
                            else
                            {
                                throw new Exception("用户名或密码不能为空");
                            }
                        }
                        else
                        {
                            throw new Exception("服务器不能为空");
                        }
                    }
                    else
                    {
                        throw new Exception("收件人不能为空");
                    }
                }
                else
                {
                    throw new Exception("发件人不能为空");
                }
                return success;
            }
            public void send()
            {
                if (parse())
                {
                    try
                    {
                        client.Send(message);
                    }
                    catch (Exception e)
                    {
                        throw new Exception(e.Message);
                    }
                }
            }
        }
    }
}

  小孟

  • Maillib.rar (43.8 KB)
  • 描述: 动态链接库
  • 下载次数: 62
1
1
分享到:
评论
1 楼 kimmking 2010-10-21  
跟socket没关系了。。。

相关推荐

    C# socket收发实例 DEMO

    简单易懂的Socket发送接收实例,绝对可用; 压缩包中SocketClient为客户端,SocketTest为服务端; 可在客户端输入内容,按回车发送; 服务端会显示接收到的数据并做出回应,聊天的模式; 使用.NET Framework 2.0制作...

    基于HPSocket实现 socket 通讯 - 修正版 ( C# demo 、 C++ dll )

    本资源“基于HPSocket实现socket通讯 - 修正版 ( C# demo 、 C++ dll )”提供了一种实用的方法,帮助开发者高效地实现跨平台的网络通信功能。以下是关于HPSocket、Socket通讯以及其C#和C++实现的关键知识点: 1. **...

    C# Socket通讯/TCP通讯,完整代码demo

    在C#的SocketDemo中,你可能看到以下关键代码片段: ```csharp // 创建Socket对象 Socket serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); // 绑定到本地IP和端口 ...

    C# Socket通讯DEMO

    在C#中,System.Net.Sockets命名空间提供了对Socket的支持。 2. **C# Socket类**: C#中的Socket类是网络编程的核心,它提供了TCP(传输控制协议)和UDP(用户数据报协议)两种主要的网络通信方式。TCP提供面向...

    C# 网络编程之socket tcp 通讯demo样例

    这个"C# 网络编程之socket tcp 通讯demo样例"可能涵盖了这些基本操作,为初学者提供了理解TCP通信机制的起点。通过阅读和理解代码,你可以了解到如何在C#中建立和管理TCP连接,以及如何进行数据的收发。对于进一步的...

    c# socket 通信demo 亲测可用,断开连接事件

    在.NET框架中,C#语言提供了丰富的网络编程接口,Socket是其中的核心部分,...提供的SocketDemo文件应该包含了完整的代码示例,供学习和参考。在实际项目中,还可以考虑使用异步操作、多线程等技术提高性能和用户体验。

    c# socket demo 已经封装成共通

    在.NET框架中,C#语言提供了丰富的库支持网络通信,其中Socket类是核心部分,用于实现TCP/IP协议栈中的各种网络通信。本示例“c# socket demo 已经封装成共通”聚焦于C#中如何使用Socket进行TCP通信,并且已经封装...

    C# .NET Web API 完整 Demo

    麻雀虽小,五脏俱全,这是一个可直接用于生产的脚手架 包含: DBHelper:数据库操作类,使用原生SQL,查询结果映射到Model,操作数据库非常方便,支持异步,...集成了自己写的Socket工具类,业务耦合较重,可以自己改

    .NET下的Socket通信Demo

    Winform窗体程序。第一个版本没有加心跳包 第二个版本可以相互检测到断网情况 适合学习,或借鉴后二次开发

    c# socket 通讯Demo

    标题"C# Socket通讯Demo"指的是使用C#编程语言实现基于Socket协议的通信示例。这通常包括创建服务器端(Server)和客户端(Client)的应用程序。服务器端负责监听特定的IP地址和端口号,等待客户端的连接请求;...

    C#Socket通信 Demo

    在C#中,System.Net.Sockets命名空间提供了Socket类,它是进行Socket通信的核心。 1. **创建Socket实例**:无论是服务器还是客户端,都需要创建Socket实例。服务器端通常会监听特定的IP地址和端口号,等待客户端的...

    C#串口通讯和socket通讯demo

    在"**CSharpPort**"压缩包中,可能有一个`SocketDemo`项目或类,它展示了如何使用`Socket`进行客户端和服务端的通信。 在`SocketDemo`中,你可能会看到以下关键步骤: 1. 创建Socket对象,指定其协议类型(TCP或UDP...

    C#SocketDemo.zip

    【标题】"C#SocketDemo.zip" 是一个包含C#编程语言实现的Socket通信示例项目的压缩包。这个项目主要用于演示如何在Windows Forms环境下构建一个简单的局域网聊天应用程序。 【描述】中提到的“C#(winform)写的一...

    C# SocketDemo

    SocketDemo是基于C#语言实现的一个网络通信示例,它主要展示了如何利用Socket类进行客户端与服务器端的数据交互。在本文中,我们将深入探讨C#中的Socket编程,并结合SocketDemo来解析其核心知识点。 首先,Socket是...

    SuperSocket客户端+服务端完整demo

    通过分析和运行这个Demo,开发者可以深入理解SuperSocket的工作原理,了解如何处理网络通信的基本流程,如建立连接、发送和接收数据。对于新手来说,这是一个很好的起点,可以帮助他们快速掌握网络编程的基础,为...

    c#、.NET6实现websocket协议服务端demo,完整清晰的解析和打包示例

    在.NET框架中,C#语言提供了强大的支持来实现WebSocket服务端。本示例基于.NET6框架,将详细介绍如何使用C#编写WebSocket服务端,包括请求头解析、数据帧解析、数据帧掩码处理以及数据帧打包的关键步骤。 首先,...

    c#基于TCP协议的Socket通信完整Demo(已实现多人聊天室)

    在C#中,使用`System.Net.Sockets`命名空间中的`Socket`类来实现TCP通信。 1. **Socket初始化**:在客户端和服务器端,都需要创建`Socket`对象,并指定协议类型(此处为`SocketType.Stream`,对应TCP)和地址族...

    socketDemo

    总的来说,"socketDemo"是一个基础的多客户端Socket服务器应用,展示了如何在C#中使用Socket实现TCP连接,以及如何处理多个客户端的并发连接。通过这种方式,客户端可以通过服务器实现间接的通信。对于网络编程初学...

    C# socket demo

    Socket在C#中被定义在System.Net.Sockets命名空间中。它的核心功能包括创建连接、监听请求、发送和接收数据等。以下是一些关于C# Socket编程的关键知识点: 1. **Socket 类创建**:首先,我们需要创建一个Socket...

Global site tag (gtag.js) - Google Analytics