用Visual C#发送电子邮件

用Visual C#发送电子邮件(1) 导读:   Visual C#是微软公司推出的下一代程序开发语言。他不仅具有Visual C++功能强大的特点,又具有Visual Basic的简洁,易上手的特点。所以一经推出,就收到了广大程序开发人员的欢迎。Visual C#和Visual C++的一个明显的区别在于,Visual C#本身是没有类库的,而Visual C++却是自身就带有类库。Visual C#虽然没有类库,但作为.N 阅读详情
用Visual C#发送电子邮件

作者: 未知
日期:

   Visual C#是微软公司推出的下一代程序开发语言。他不仅具有Visual C++功能强大的特点,又具有Visual Basic的简洁,易上手的特点。所以一经推出,就收到了广大程序开发人员的欢迎。Visual C#和Visual C++的一个明显的区别在于,Visual C#本身是没有类库的,而Visual C++却是自身就带有类库。Visual C#虽然没有类库,但作为.Net框架中的一个十分重要的开发语言。他可以使用.Net框架提供的一个通用的软件开发包--.Net FrameWork SDK。这个软件开发包可以说是Visual C#功能的延伸,Visual C#就是通过他实现了自身无法实现的很多功能。本文就是来介绍Visual C#如何利用这个软件开发包来发送电子邮件的。

一.软件开发和运行的环境设置:

   I > .视窗系统2000服务器版

   II > ..Net FrameWork SDK Beta 2版

   III > .打开"控制面板",进入"添加和删除程序",然后再点击"添加/删除Windows组件",就可以看见以下界面:


           图01:系统配置界面

   点中"Internet信息服务( IIS )",然后点击"详细信息",可得到如下界面:


        图02:系统配置界面

   点中选择"SMTP Serverce"选项,然后按"确定"按钮。再按"下一步"按钮,则系统在重新启动后,就会安装好运行本文程序所需要的SMTP Service了。
二.Visual C#如何发送电子邮件:

   在.Net FrameWork SDK Beta 2版中,有一个叫做System.Web.Mail的名称空间,在这个名称空间中封装发送电子邮件的方法、对象和属性。Visual C#就是通过调用此名称空间中的方法、对象和属性,发送电子邮件的。在本文中,发送电子邮件主要用到了二个对象:一个是MailMessage对象,此对象主要是封装电子邮件的各个属性,即所谓的发信人,收信人,信件的主题,信件的内容和信件的附件等。另外一个是SmtpMail对象,这个对象的最大作用是把已经定义好各个属性的MailMessage对象给发送出去,而完成此功能,就需要调用SmtpMail对象的Send ( )方法。

三.在Visual C#中正确使用发送电子邮件相关的对象:

   (1).要调用对象,当然首先就要在程序的最前面导入封装对象的名称空间,具体如下:

     using System.Web.Mail ;

   (2).正确定义MailMessage对象的属性:

   MailMessage对象中和电子邮件相关的属性可以用下表来表示:

属性名称 代表意义
From 源地址
To 目的地址
Subject 邮件主题
Priority 邮件优先级 ( High , Low , Normal )
Attachments 附件
Bcc 暗送地址
Cc 抄送地址
Body 邮件内容主体
Bodyformat 邮件格式( Html , Text )
Bodyencoding 邮件编码( Base64 , Uuencode )

   在程序中,具体的实现语句如下:

MailMessage aMessage = new MailMessage ( ) ;
//新建一个MailMessage对象
aMessage.From = FromTextBox.Text ;
//定义发信人地址,如果是多人,可以用","分开
aMessage.To = ToTextBox.Text ;
//定义收信人地址,如果是多人,可以用","分开
aMessage.Cc = CCTextBox.Text ;
//定义抄送人地址,如果是多人,可以用","分开
aMessage.Bcc = BCCTextBox.Text ;
//定义暗送人地址,如果是多人,可以用","分开
aMessage.Subject = SubjectTextBox.Text ;
//定义邮件的主题
aMessage.Body = MessageTextBox.Text ;
//定义邮件的内容
if ( AttachmentTextBox.Text.Length > 0 )
aMessage.Attachments.Add ( new MailAttachment ( AttachmentTextBox.Text , MailEncoding.Base64 ) ) ;
//给邮件增加一个附件

   注:"="右边是程序中定义的文本框的"Text"值。

   (3).用SmtpMail对象正确发送电子邮件:

   在Visual C#中调用SmtpMail对象的Send ( )方法有多种方式。本文介绍的只是其中的一种比较常用的调用方式,即:SmtpMail.Send ( MailMessage对象 )。在程序中的实现语句如下:

    SmtpMail.Send ( aMessage ) ;
四.本文源程序代码( Send.cs )以及程序运行界面:

   下图是编译好的程序的运行界面:


       图03:Send.cs程序运行界面

   以下是Send.cs源程序代码:

using System ;
using System.Drawing ;
using System.Collections ;
using System.ComponentModel ;
using System.Windows.Forms ;
using System.Data ;
using System.Web ;
using System.Web.Mail ;
//导入程序中使用到的名称空间
public class Form1 : Form
{
  private Label label1 ;
  private Label label2 ;
  private Label label3 ;
  private Button SendButton ;
  private Button ExitButton ;
  private TextBox FromTextBox ;
  private TextBox ToTextBox ;
  private TextBox SubjectTextBox ;
  private TextBox MessageTextBox ;
  private TextBox CCTextBox ;
  private Label CCLabel ;
  private TextBox BCCTextBox ;
  private Label label4 ;
  private Label label5 ;
  private Button BrowseButton ;
  private OpenFileDialog openFileDialog1 ;
  private TextBox AttachmentTextBox ;
  private System.ComponentModel.Container components = null ;
  public Form1 ( )
  {
    InitializeComponent ( ) ;
  }
  //清除在程序中使用的所有资源
  protected override void Dispose ( bool disposing )
  {
   if ( disposing )
   {
    if ( components != null )
    {
     components.Dispose ( ) ;
    }
   }
   base.Dispose ( disposing ) ;
  }
  private void InitializeComponent ( )
  {
   MessageTextBox = new TextBox ( ) ;
   ToTextBox = new TextBox ( ) ;
   SendButton = new Button ( ) ;
   ExitButton = new Button ( ) ;
   FromTextBox = new TextBox ( ) ;
   label1 = new Label ( ) ;
   SubjectTextBox = new TextBox ( ) ;
   label2 = new Label ( ) ;
   label3 = new Label ( ) ;
   CCTextBox = new TextBox ( ) ;
   CCLabel = new Label ( ) ;
   BCCTextBox = new TextBox ( ) ;
   label4 = new Label ( ) ;
   label5 = new Label ( ) ;
   AttachmentTextBox = new TextBox ( ) ;
   BrowseButton = new Button ( ) ;
   openFileDialog1 = new OpenFileDialog ( ) ;

   FromTextBox.Location = new System.Drawing.Point ( 96 , 16 ) ;
   FromTextBox.Name = "FromTextBox" ;
   FromTextBox.Size = new System.Drawing.Size ( 240 , 20 ) ;
   FromTextBox.TabIndex = 0 ;
   FromTextBox.Text = "" ;

   ToTextBox.Location = new System.Drawing.Point ( 96 , 53 ) ;
   ToTextBox.Name = "ToTextBox" ;
   ToTextBox.Size = new System.Drawing.Size ( 240 , 20 ) ;
   ToTextBox.Text = "" ;
   ToTextBox.TabIndex = 1 ;

   CCTextBox.Location = new System.Drawing.Point ( 96 , 88 ) ;
   CCTextBox.Name = "CCTextBox" ;
   CCTextBox.Size = new System.Drawing.Size ( 240 , 20 ) ;
   CCTextBox.TabIndex = 2 ;
   CCTextBox.Text = "" ;

   BCCTextBox.Location = new System.Drawing.Point ( 96 , 120 ) ;
   BCCTextBox.Name = "BCCTextBox" ;
   BCCTextBox.Size = new System.Drawing.Size ( 240 , 20 ) ;
   BCCTextBox.TabIndex = 3 ;
   BCCTextBox.Text = "" ;

   SubjectTextBox.Location = new System.Drawing.Point ( 96 , 152 ) ;
   SubjectTextBox.Name = "SubjectTextBox" ;
   SubjectTextBox.Size = new System.Drawing.Size ( 240 , 20 ) ;
   SubjectTextBox.TabIndex = 4 ;
   SubjectTextBox.Text = "" ;

   AttachmentTextBox.Location = new System.Drawing.Point ( 96 , 184 ) ;
   AttachmentTextBox.Name = "AttachmentTextBox" ;
   AttachmentTextBox.Size = new System.Drawing.Size ( 168 , 20 ) ;
   AttachmentTextBox.TabIndex = 5 ;
   AttachmentTextBox.Text = "" ;

   MessageTextBox.Location = new System.Drawing.Point ( 8 , 216 ) ;
   MessageTextBox.Multiline = true ;
   MessageTextBox.Name = "MessageTextBox" ;
   MessageTextBox.Size = new System.Drawing.Size ( 320 , 152 ) ;
   MessageTextBox.Text = "" ;
   MessageTextBox.TabIndex = 6 ;

   BrowseButton.Location = new System.Drawing.Point ( 280 , 184 ) ;
   BrowseButton.Name = "BrowseButton";
   BrowseButton.Size = new System.Drawing.Size ( 56 , 24 ) ;
   BrowseButton.Text = "浏览文件" ;
   BrowseButton.TabIndex = 7 ;
   BrowseButton.Click += new System.EventHandler ( BrowseButton_Click ) ;

   SendButton.Location = new System.Drawing.Point ( 64 , 380 ) ;
   SendButton.Name = "SendButton" ;
   SendButton.Size = new System.Drawing.Size ( 72 , 24 ) ;
   SendButton.Text = "发送邮件" ;
   SendButton.TabIndex = 8 ;
   SendButton.Click += new System.EventHandler ( SendButton_Click ) ;

   ExitButton.Location = new System.Drawing.Point ( 200 , 380 ) ;
   ExitButton.Name = "ExitButton" ;
   ExitButton.Size = new System.Drawing.Size ( 72 , 24 ) ;
   ExitButton.Text = "退出程序";
   ExitButton.TabIndex = 9 ;
   ExitButton.Click += new System.EventHandler ( ExitButton_Click ) ;

   label1.Font = new System.Drawing.Font ( "宋体", 9F );
   label1.Location = new System.Drawing.Point ( 48 , 16 ) ;
   label1.Name = "label1" ;
   label1.Size = new System.Drawing.Size ( 48 , 16 ) ;
   label1.Text = "发信人:" ;

   label2.Font = new System.Drawing.Font ( "宋体", 9F );
   label2.Location = new System.Drawing.Point ( 48 , 53 ) ;
   label2.Name = "label2" ;
   label2.Size = new System.Drawing.Size ( 48 , 16 ) ;
   label2.Text = "收信人:" ;

   label3.Font = new System.Drawing.Font ( "宋体", 9F ) ;
   label3.Location = new System.Drawing.Point ( 48 , 152 ) ;
   label3.Name = "label3" ;
   label3.Size = new System.Drawing.Size ( 48 , 16 ) ;
   label3.Text = "主 题:" ;

   CCLabel.Font = new System.Drawing.Font ( "宋体", 9F ) ;
   CCLabel.Location = new System.Drawing.Point ( 48 , 88 ) ;
   CCLabel.Name = "CCLabel" ;
   CCLabel.Size = new System.Drawing.Size ( 48 , 16 ) ;
   CCLabel.Text = "抄 送:" ;

   label4.Font = new System.Drawing.Font ( "宋体", 9F ) ;
   label4.Location = new System.Drawing.Point ( 48 , 120 ) ;
   label4.Name = "label4" ;
   label4.Size = new System.Drawing.Size ( 48 , 16 ) ;
   label4.Text = "暗 送:" ;

   label5.Font = new System.Drawing.Font ( "宋体", 9F ) ;
   label5.Location = new System.Drawing.Point ( 48 , 184 ) ;
   label5.Name = "label5" ;
   label5.Size = new System.Drawing.Size ( 48 , 16 ) ;
   label5.Text = "附 件:" ;

   openFileDialog1.Title = "选择文件作为邮件的附件:" ;

   this.AutoScaleBaseSize = new System.Drawing.Size ( 5 , 13 ) ;
   this.ClientSize = new System.Drawing.Size ( 344 , 413 ) ;

   this.Controls.Add ( BrowseButton ) ;
   this.Controls.Add ( AttachmentTextBox ) ;
   this.Controls.Add ( label5 ) ;
   this.Controls.Add ( label4 ) ;
   this.Controls.Add ( BCCTextBox ) ;
   this.Controls.Add ( CCLabel ) ;
   this.Controls.Add ( CCTextBox ) ;
   this.Controls.Add ( ExitButton ) ;
   this.Controls.Add ( SendButton ) ;
   this.Controls.Add ( label3 ) ;
   this.Controls.Add ( label2 ) ;
   this.Controls.Add ( label1 ) ;
   this.Controls.Add ( SubjectTextBox ) ;
   this.Controls.Add ( ToTextBox ) ;
   this.Controls.Add ( FromTextBox ) ;
   this.Controls.Add ( MessageTextBox ) ;
   this.Name = "Form1" ;
   this.Text = "用Visual C#做邮件发送软件!" ;
   this.ResumeLayout ( false );

  }
  static void Main ( )
  {
   Application.Run ( new Form1 ( ) ) ;
  }

  private void SendButton_Click ( object sender , System.EventArgs e )
  {
   try
   {
    MailMessage aMessage = new MailMessage ( ) ;
    //新建一个MailMessage对象
    aMessage.From = FromTextBox.Text ;
    //定义发信人地址,如果是多人,可以用","分开
    aMessage.To = ToTextBox.Text ;
    //定义收信人地址,如果是多人,可以用","分开
    aMessage.Cc = CCTextBox.Text ;
    //定义抄送人地址,如果是多人,可以用","分开
    aMessage.Bcc = BCCTextBox.Text ;
    //定义暗送人地址,如果是多人,可以用","分开
    aMessage.Subject = SubjectTextBox.Text ;
    //定义邮件的主题
    aMessage.Body = MessageTextBox.Text ;
    //定义邮件的内容
    if ( AttachmentTextBox.Text.Length > 0 )
     aMessage.Attachments.Add ( new MailAttachment ( AttachmentTextBox.Text , MailEncoding.Base64 ) ) ;
    //给邮件增加一个附件
    SmtpMail.Send ( aMessage ) ;
    //发送电子邮件
    MessageBox.Show( "电子邮件已经发送到->" + ToTextBox.Text ) ;
   }
   catch ( Exception ex )
   {
    MessageBox.Show ( ex.Message.ToString ( ) ) ;
   }
  }

  private void ExitButton_Click ( object sender , System.EventArgs e )
  {
   Application.Exit ( ) ;
  }


  private void BrowseButton_Click ( object sender , System.EventArgs e )
  {
   if ( openFileDialog1.ShowDialog ( ) == DialogResult.OK )
   {
    AttachmentTextBox.Text = openFileDialog1.FileName ;
   }

  }

}

五.总结:

   至此我们已经用Visual C#完成了一个功能十分完备的电子邮件发送软件。可见,在程序中,起到关键作用的是.Net FrameWork SDK,正是他的丰富的类库,使得发送电子邮件变成一件十分轻松的事情。其实你也只有掌握了.Net FrameWork SDK中的类库,Visual C#才能发挥其最大的功能。

电子邮件客户端 C#编写(发送和接收) 电子邮件不是一种“终端到终端”的服务,是被称为“存贮转发式”服务。这正是电子信箱系统的核心,利用存贮转发可进行非实时通信,属异步通信方式。即信件发送者可随时随地发送邮件,不要求接收者同时在场,即使对方现在不在,仍可将邮件立刻送到对方的信箱内,且存储在对方的电子邮箱中。接收者可在他认为方便的时候读取信件,不受时空限制。在这里,“发送”邮件意味着将邮件放到收件人的信箱中,而“接收”邮件则意味着从自己的信箱中读取信件,信箱实际上是由档管理系统支持的—个实体。因为电子邮件是通过邮件服务器(mai1 server)来传递档的。 立即下载

相关推荐

C# 邮件发送类,MailMessage

C# 邮件发送类,MailMessage

c#实现邮件发送功能

同样的找到账户,然后选中你登录的账号,选择服务器,找到发件服务器和对应的端口号填进静态类中构造方法的参数去,值得一提的是默认ssl是打开的你需要关闭之后才能使用。我个人是使用一个静态类实现邮件的发送功能,非常简单,导入之后之需要调用即可。网易的也类似,找到设置》基础设置》打开pops/smtp服务。方法有很多种,具体的可以读一下静态类中的内容。不知道的打开foxmail,一个邮件处理软件,官网即可下载。往下拉,打开以下功能:生成授权码,等下有用。点进去即可下载,设置的免费,csdn的尿性。

qq_53217825的博客 2万+

利用.Net类库发送电子邮件

利用.Net类库发送电子邮件,利用.Net类库发送电子邮件

C#自带类库实现邮件发送

      1.首先引入命名空间using System.Net.Mail;  2.将发送的邮件的功能封装成一个类,该类中包含了发送邮件的基本功能:收件人(多人),抄送(多人),发送人,主题,邮件正文,附件等,封装的Email类如下: View Code  调用发送邮件的类 View Code  完美世界 http://www.23cat.com/Contents_51864.html 戮仙 ht...

weixin_34395205的博客 248

利用VS2010实现发送邮件(SMTP)

C++实现发送邮件,开发环境是VS2010 MFC,QQ邮箱测试通过

游戏经济数值模型的搭建过程——以标准卡牌游戏为例

一、总体规划 1.玩家分类 首先我们按照下表对玩家进行分类 付费能力即为充值额度;充值行为比如购买月卡/购买钻石;消费行为比如用钻石抽卡 在这里我们假设玩家是理性的,即玩家会以追求更高的性价比为目标进行充值与消费(即小R会优先买首冲+月卡,而不是买一个无用的无属性皮肤) 不同类型玩家之间的差异,实际上就主要由这些行为的差异而决定。 注:早期游戏制作的时候,活跃程度也是区分玩家类型的一个重要依据。不过目前现在游戏中有各种手段抹平了不同活跃玩家的差异(体力限制,活跃时间长的收益递减)..

dudu3332的博客 4228

用Visual C#发送电子邮件(2)

 以下是Send.cs源程序代码: using System ; using System.Drawing ; using System.Collections ; using System.ComponentModel ; using System.Windows.Forms ; using System.Data ; using

Kesa_Kong的专栏 1244

麒麟信安3.3-6C电网版虚拟机安装避坑指南:从ISO下载到SSH配置全流程

本文提供麒麟信安3.3-6C电网版虚拟机的详细安装与配置指南。针对电力行业仿真测试需求,重点解析从ISO镜像获取、虚拟机环境准备、安装过程中的三大“雷区”(如多管理员密码逻辑、分区方案、网络配置)到首次启动后的网络、SSH及root策略配置的全流程避坑要点,帮助技术人员高效、安全地完成部署。

rainy的博客 854

如何使用 Cdosys.dll 库使用 Visual C# 中发送电子邮件带有附件接收邮件

from: http://support.microsoft.com/kb/310221http://support.microsoft.com/kb/310224/http://support.microsoft.com/kb/310225/http://support.microsoft.com/kb/310212/如何使用 Cdosys.dll 库一封新邮件中嵌入一条消息,使用 Visual...

weixin_33948416的博客 384

Python自然语言处理 NLTK 库用法入门教程【经典】

@本文来源于公众号:csdn2299,喜欢可以关注公众号 程序员学府 本文实例讲述了Python自然语言处理 NLTK 库用法。分享给大家供大家参考,具体如下: 在这篇文章中,我们将基于 Python 讨论自然语言处理(NLP)。本教程将会使用 Python NLTK 库。NLTK 是一个当下流行的,用于自然语言处理的 Python 库。 那么 NLP 到底是什么?学习 NLP 能带来什么好处? ...

python函数基础教程 1万+

1.毫米波雷达心率、呼吸原理实现(一)实例

毫米波雷达心率、呼吸检测原理本项目分两到三篇文章写完,第一阶段借鉴TI开源项目以及根据自己的见解适当更改信号处理链通过AWR1843汽车雷达传感器和DCA1000采集卡采集数据完成人体呼吸和心跳检测算法的实现。第二阶段将仿真成功的代码搬移TIAWR1843传感器并通过串口数据实现生命体征的实时处理。本文即为第一阶段实现过程。本文首先概述毫米波雷达呼吸心跳检测的原理,紧接着概述本项目信号处理流程,另外本项目第一阶段通过matlab仿真验证算法的有效性,仿真源码可关注小编并私信可取。1.概述。

Poulen的博客 2万+

C#发送电子邮件

用Visual C#发送电子邮件 (1)2006-07-02 21:23:36  作者:  来源:  浏览次数:0  网友评论0条  文字大小:【大】【中】【小】 评分等级:0来源:电脑教程在线(http://www.linuxdiyf.com/1/)作者:linux原文:用Visual C#发送电子邮件(http://www.linuxdiyf.com/1/article/200

沙漠里的鱼 2007

避坑指南:C#调用CodeSoft打印标签时常见的5个错误及解决方法

本文总结了C#调用CodeSoft打印标签时常见的5个核心错误及解决方案,涵盖环境配置、模板加载、变量赋值、打印机切换和资源管理。重点解析了如何避免COM对象创建失败、模板路径错误、变量名不匹配、打印机切换异常及内存泄漏等问题,帮助开发者实现稳定高效的标签打印集成。

weixin_29215815的博客 223

How TO: 使用 System.Web.Mail 和 Visual C# .NET 以编程方式发送电子邮件 (From MSDN)

概要本文演示如何使用System.Web.Mail 在 Visual C#.NET 中发送电子邮件。 更多信息启动 Microsoft Visual Studio .NET。在文件 菜单中,单击新建 ,然后单击项目。依次单击Visual C# 项目、控制台应用程序 模板,然后单击确定。 默认情况下创建 Class1.cs。 添加对System.Web.dll 的引用。为此,

1036

Revit Dynamo实战:用Excel数据批量生成桥梁模型(附自适应族技巧)

本文详细介绍了如何利用Revit Dynamo结合Excel数据实现桥梁参数化建模,重点讲解了数据驱动建模、自适应族优化及大型项目性能管理三大核心技巧。通过结构化Excel数据、高级自适应族创建和分块处理策略,显著提升桥梁建模效率与设计变更响应能力。

weixin_42520025的博客 387

Meta DINOv3实战指南:如何用7B参数ViT模型搞定图像分割与检测(附Hugging Face配置)

本文提供了Meta DINOv3模型的实战应用指南,重点介绍了如何利用这个7B参数的视觉Transformer模型进行图像分割与目标检测。通过详细的Hugging Face配置步骤、环境搭建、模型加载与推理优化,帮助开发者快速上手这一强大的自监督视觉模型,并高效应用于实际计算机视觉任务中。

s3t4u的博客 906

【实用技能】如何使用 .NET C# 创建 PDF 文档并将其作为电子邮件附件发送

本文介绍如何使用 .NET C# 创建 PDF 文档并将其作为电子邮件附件发送。PDF 是使用 TX Text Control .NET Server 组件创建的,电子邮件是使用 System.Net.Mail 命名空间发送的。

开发者效率提升工具的博客 1208

AUTOSAR内存篇 -内存驱动(Mem)

Mem驱动程序的task是基于底层内存设备技术的物理分段的低级内存访问。Mem驱动程序的API与内存设备技术无关,因此向存储器访问模块上层提供了与存储器设备无关的接口。所有高级功能(如跨段操作)都由内存访问模块处理,以尽可能降低Mem驱动器的复杂性和占用空间。Mem驱动API命名、类型定义和文件命名规则都遵循标准的AUTUSAR BSW模块实现。服务Mem_Init初始化Mem驱动的内部状态,并设置Mem驱动Job处理状态到MEM_JOB_OK。

IOT2017的博客 713

vs2005中发送邮件的方法(C#)

在vs2005中发送邮件的方法如下:            System.Net.Mail.SmtpClient client = new SmtpClient();            client.Host = "smtp.163.com";            client.UseDefaultCredentials = false;            client.Credenti

Devil Angel 1082

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

上一篇: TieXue.net论坛助手已经初步完成,请大家帮忙测试:)
下一篇: 转换DataSet到普通xml的新法
netsapper
博客等级 码龄23年 7粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值