1.添加JMail组件:在vs的解决方案资源管理器中,右键添加引用,选择浏览,选择jmail.dll文件,在Bin文件夹中就可以看到添加的JMail组件.

2.注册JMail组件:开始-->运行-->输入如:regsvr32 D:\DotNet相关插件和脚本\jmail.dll

Regsvr32 解释:
这个命令行工具将 dll 文件注册为注册表中的命令组成。
语法
regsvr32 【/u】 【/s】 【/n】 【/i【:cmdline】】 dllname
参数
/u 
未注册服务器。 
/s 
指定 regsvr32 安静运行,且不显示任何消息框。 
/n 
指定不调用 DllRegisterServer。此选项必须与 /i 共同使用。 
/i:cmdline 
调用 DllInstall 将它传递到可选的 【cmdline】。在与 /u 共同使用时,它调用 dll 卸载。 
dllname 
指定要注册的 dll 文件名。 
/? 
在命令提示符显示帮助。

完成1,2部操作后,我们来编写代码:

界面参考:

    1. //点击发送邮件
    2. protected void btnTranSmit_Click(object sender, EventArgs e)
    3. {
    4. try
    5. {
    6. //调用发送邮件的方法
    7. SendEmail(txtSender.Text, txtSenderName.Text, txtTransmitName.Text, txtTransmitPassword.Text, txtReceiver.Text, txtSubject.Text, txtContent.Text, txtServer.Text);
    8. }
    9. catch (Exception ex)
    10. {
    11. Response.Write(ex.Message);
    12. }
    13. }
    14. /// <summary>
    15. /// 使用Jmail发送邮件的方法
    16. /// </summary>
    17. /// <param name="sender">发件人邮箱</param>
    18. /// <param name="senderName">发件人姓名</param>
    19. /// <param name="TransmitName">发送邮件人的邮箱的登录名</param>
    20. /// <param name="TransmitPassWord">发送邮件人的邮箱密码</param>
    21. /// <param name="Receiver">收件人的地址</param>
    22. /// <param name="subject">邮件的主题</param>
    23. /// <param name="Content">邮件的内容</param>
    24. /// <param name="ServerHost">服务器的地址</param>
    25. private void SendEmail(String sender, String senderName, String TransmitName, String TransmitPassWord, String Receiver, String subject, String Content, String ServerHost)
    26. {
    27. //创建Jmail对象
    28. MessageClass jMessage = new MessageClass();
    29. //设置编码
    30. jMessage.Charset = "GB2312";
    31. //设置邮件头不使用ISO-8859-1的编码
    32. jMessage.ISOEncodeHeaders = false;
    33. //设置发送的邮件的邮箱地址
    34. jMessage.From = sender;
    35. //设置发件人姓名
    36. jMessage.FromName = senderName;
    37. //设置主题
    38. jMessage.Subject = subject;
    39. //设置发送邮件的邮箱或者邮件服务器登陆名
    40. jMessage.MailServerUserName = TransmitName;
    41. //设置发送邮件的邮箱或者邮件服务器密码
    42. jMessage.MailServerPassWord = TransmitPassWord;
    43. //添加接收邮件的邮箱地址
    44. jMessage.AddRecipient(Receiver, "", "");
    45. //设置发送邮件正文
    46. jMessage.Body = Content;
    47. //判断上传控件是否为空
    48. if (fluAttachMent.HasFile)
    49. {
    50. String fileName = fluAttachMent.PostedFile.FileName;
    51. //添加附件
    52. jMessage.AddAttachment(fileName, true, "");
    53. }
    54. //发送邮件
    55. if (jMessage.Send(ServerHost, false))
    56. {
    57. Response.Write("<script>alert('发送成功!');</script>");
    58. }
    59. else
    60. {
    61. Response.Write("<script>alert('发送失败!');</script>");
    62. }
    63. }

在项目中使用JMail发送邮件的更多相关文章

  1. Maven项目中的pom.xml详解【转】

    什么是pom? pom作为项目对象模型.通过xml表示maven项目,使用pom.xml来实现.主要描述了项目:包括配置文件:开发者需要遵循的规则,缺陷管理系统,组织和licenses,项目的url, ...

  2. J2EE项目中后台定时运行的程序

    转自:http://www.2cto.com/kf/201311/260676.html 在开发J2EE项目中,有时候需要在后台定时执行一些代码. 比如定时对web数据建立倒排索引.定时发送邮件.定时 ...

  3. SQL ALTER TABLE 语句在项目中的使用

    1.在实际的项目开发过程中,之前已经创建好的实体类可能需要增加/删除字段,亦或是更改已有字段的属性,比如主键的增长策略从自增型改为UUID型,那么就会涉及到 SQL 中 alter table 语句的 ...

  4. 项目中添加Log4J支持

    首先,在项目中的classes 中新建立一个log4j.properties文件即可: 在实际编程时,要使Log4j真正在系统中运行事先还要对配置文件进行定义.定义步骤就是对Logger.Append ...

  5. 项目中使用Quartz集群分享--转载

    项目中使用Quartz集群分享--转载 在公司分享了Quartz,发布出来,希望大家讨论补充. CRM使用Quartz集群分享  一:CRM对定时任务的依赖与问题  二:什么是quartz,如何使用, ...

  6. ThinkPHP 中使用 PHPMailer 发送邮件 支持163和QQ邮箱等

    [摘要]ThinkPHP是一个开源的PHP框架, 是为了简化企业级应用开发和敏捷WEB应用开发而诞生的.本文介绍ThinkPHP 中使用 PHPMailer 发送邮件. PHP是自带可以发送邮件的Ma ...

  7. 在Thinkphp3.2 中使用PHPMailer 发送邮件

    phpmailer发送邮件是php开发者首选的一个邮件发送插件了,下面我来介绍怎么集成phpmailer到thinkphp框架了,有需要了解的朋友可参考. phpmailer发送邮件功能很强大,今天真 ...

  8. Redis的安装以及在项目中使用Redis的一些总结和体会

    第一部分:为什么我的项目中要使用Redis 我知道有些地方没说到位,希望大神们提出来,我会吸取教训,大家共同进步! 注册时邮件激活的部分使用Redis 发送邮件时使用Redis的消息队列,减轻网站压力 ...

  9. 初识quartz 并分析 项目中spring整合quartz的配置【原创+转载】

    初识quartz 并分析 项目中spring整合quartz的配置[原创+转载]2018年01月29日 12:08:07 守望dfdfdf 阅读数:114 标签: quartz 更多个人分类: 工具 ...

随机推荐

  1. SQL语言 之 SQL概述

    SQL(Structured Query Language)语言,自1987年6月被国际标准化组织采纳为国际标准,SQL语言成为关系数据库的标准语言. SQL语言是关系数据库操作的基础语言,将数据查询 ...

  2. 取石子 (四)_nyoj_161(博弈-奇异矩阵).java

    取石子 (四) 时间限制: 1000 ms  |  内存限制: 65535 KB 难度: 4   描述 有两堆石子,数量任意,可以不同.游戏开始由两个人轮流取石子.游戏规定,每次有两种不同的取法,一是 ...

  3. 首先不谈C语言,我们先来谈谈编程工具

    系统环境: 推荐Windows xp sp1 软件: Tb2.0或3.0 推荐理由:最好的一个系统环境 系统环境: 推荐Windows xp/ Windows 7/ Windows 8.1/Windo ...

  4. 【转】TCP(协议号6)的方方面面

    转:http://blog.sina.com.cn/s/blog_6002b97001018fxh.html 第一:TCP连接的建立(也就是所谓的三次握手)过程. 第一次握手:建立连接时,客户端发送s ...

  5. Java Source Attacher 1.2 发布

    Java Source Attacher 1.2 是一款自动帮你附加源代码的Eclipse插件,相信很多Java Coder都有过手动附加源代码的经历,去网上搜索,然后下载下来,最后附加上,很麻烦,而 ...

  6. 编程算法 - 翻转单词顺序 代码(C)

    翻转单词顺序 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 输入一个英文句子, 翻转句子中单词的顺序, 但单词内字符的顺序不变. 首先翻转(r ...

  7. e.keycode详解

    function submitLoginForm(e) { e = window.event || e; if(e.keyCode == 13) { login(); } } keycode 8 = ...

  8. PHP-WebService中Endpoint、Disco、WSDL都是做什么的?

    Endpoint: http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx   web服务的URI地址,你访问之后,就会出现web服务的相 ...

  9. spring.xml从外部文件引入数据库配置信息

    <!-- 分散配置 --> <context:property-placeholder location="classpath:jdbc.properties" ...

  10. Postman+Postman interceptor的安装和使用-解决把chrome浏览器登录状态同步到postman进行有依赖的接口测试 Postman 使用方法详解

    Postman+Postman interceptor的安装和使用-解决把chrome浏览器登录状态同步到postman进行有依赖的接口测试   问题引入:做接口测试时,有依赖关系的接口往往不好测试( ...