仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 601|回复: 9
打印 上一主题 下一主题

[学习教程] ASP教程之完成ASP文件在线发邮件

[复制链接]
萌萌妈妈 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:29:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
优点:简单易学、开发速度快、有很多年“历史”,能找到非常多别人做好的程序来用、配合activeX功能强大,很多php做不到的asp+activeX能做到,例如银行安全控件笔者在理论中使用ASP的COM组件功效,在VB中完成了一个发邮件的小组件,在ASP中只经由过程轻松挪用,就能够完成该功效。一切邮件处置机制都被封装在这个组件中,利用起来极其便利。上面将具体先容该组件的基础开辟道理和在ASP中的使用。

  1.使用Winsock控件与发送邮件的SMTP接洽

  和SMTP的接洽包含握手、发送数据和封闭等全历程,次要程序以下:

  创建一个frmsendmail的窗体,个中包括一个Winsock控件,有以下几个大众变量:

  PublicmSTMPAsString

  //发送邮件的STMP

  PublicmFromAsString

  //FROM地点

  PublicmToAsString

  //抵达地点

  PublicmSubjectAsString

  //邮件主题

  PublicmTextAsString  

  //邮件注释

  Sock.ConnectmSTMP,25

  //和发送邮件的STMP创建接洽

  PrivateSubSock_Connect()

    SFlag=sfConn

  //毗连乐成后设置参数

  EndSub

  PrivateSubSock_DataArrival(ByValbytesTotalAsLong)

    OnErrorGoTodaErr

    DimsAsString

    Sock.GetDatas

    SelectCaseSFlag

      CasesfStart

      CasesfConn

        SFlag=sfHelo

  //收回握手信息HELLO

      Send"HELO"&&mMyname

      CasesfHelo

      SFlag=sfFrom

  Send"MAILFROM:"&&GetReal(mFrom)

      CasesfFrom

        IfLeft(s,3)〈〉"250"ThenGoToSrvErr

  //假如乐成发送吸收邮件地点

  SFlag=sfRcpt

  Send"RCPTTO:"&&GetReal(mTo)

      CasesfRcpt

        IfLeft(s,3)〈〉"250"ThenGoToSrvErr

  //假如乐成入手下手发送数据

  SFlag=sfData

  Send"Data"

  CasesfData

  IfLeft(s,3)〈〉"354"ThenGoToSrvErr

  SFlag=sfSendOver        //数据包含4项,最初以.停止

  Send"From:"&&mFrom

  Send"To:"&&mTo

  Send"Subject:"&&mSubject&&vbCrLf

  SendmText

  Send"."

  CasesfSendOver

  IfLeft(s,3)〈〉"250"ThenGoToSrvErr

  SFlag=sfStart

  SendOk=True

  Send"Quit"

  EndSelect

  ExitSub

  EndSub

  2.将上述功效封装在一个类中

  因为ASP能利用的组件中不克不及存在控件,以是要经由过程类模块来封装上述窗体。起首在类初始化时创建一窗体:

  PrivateSubClass_Initialize()

    Setfrm=NewfrmSendMail

  EndSub

  把窗体的大众变量作为属性封装在类模块中。

  该窗体的函数接口为:

  PublicSubSend()

    frm.SendStart

  EndSub

  3.注册该组件

  将上述工程编译成DLL文件,经由过程VB注册或手工注册都能够。

  4.在ASP中的使用

  挪用办法以下:

  SetsMail=Server.CreateObject("SendMailX.Mail")

  sMail.STMP="166.166.1.1"

  sMail.LogFile="e:Logsmail.log"

  sMail.mFrom=mFromName&&"〈"&&mFromAddr&&"〉"

  sMail.mTo=mToName&&"〈"&&mToAddr&&"〉"

  sMail.mSubject=mSubject

  sMail.mText=mText

  sMail.Send

  个中变量能够经由过程赋值,也能够来自上一个request页面。

  因为版面所限,不克不及具体叙说,必要此组件的伴侣能够到http://flyfly.533.net的软件编程栏目高低载。
ASP脚本是采用明文(plaintext)方式来编写的。
admin 该用户已被删除
沙发
发表于 2015-1-19 15:10:20 | 只看该作者
虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。
活着的死人 该用户已被删除
板凳
发表于 2015-1-26 09:47:25 | 只看该作者
学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。
灵魂腐蚀 该用户已被删除
地板
发表于 2015-2-4 13:57:30 | 只看该作者
虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。
小魔女 该用户已被删除
5#
发表于 2015-2-10 01:33:47 | 只看该作者
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
飘灵儿 该用户已被删除
6#
发表于 2015-2-28 13:59:35 | 只看该作者
不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍
冷月葬花魂 该用户已被删除
7#
发表于 2015-3-9 23:53:14 | 只看该作者
下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。
萌萌妈妈 该用户已被删除
8#
 楼主| 发表于 2015-3-17 03:10:34 | 只看该作者
ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:
变相怪杰 该用户已被删除
9#
发表于 2015-3-17 03:10:34 | 只看该作者
交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。
兰色精灵 该用户已被删除
10#
发表于 2015-3-23 18:10:32 | 只看该作者
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 03:49

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表