变相怪杰 发表于 2015-1-16 23:38:36

ASP编程:Asp深度揭密(下)

强大的可扩展性。ASP具有强大的扩展性,可以实现与多种网络、硬件设备的连接:通过专用的通讯线路远程接入企业;通过远程拨号服务器为远程拨号客户提供服务;通过WAP为移动电话互联网客户服务。4、Asp组件的开辟与利用:

1.组件的特性?

l长处:
n挪用便利,节俭代码
n平安性高
n撑持事件处置,多组件团结
n运转速率快
n晋级、修正组件不需修正页面,因而扩大性好
l弱点:
n开辟及调试坚苦

2.怎样利用VB开辟?

⑴.翻开VB>>NewProject>>ActiveXDLL

⑵.修正项目称号为course


⑶.修正类模块的名字为conn_db


⑷.Project>>References,援用COM+ServiceTypeLibrary和MicrosoftActiveServerPagesObjectLibrary。

⑸.修正类代码以下:

创建数据库毗连并输入数据库字段
DimResponseAsResponse
DimRequestAsRequest
DimServerAsServer
DimApplicationAsApplication
DimSessionAsSession

PrivateSubClass_Initialize()
DimobjContextAsObjectContext
SetobjContext=GetObjectContext()
SetResponse=objContext("Response")
SetRequest=objContext("Request")
SetServer=objContext("Server")
SetApplication=objContext("Application")
SetSession=objContext("Session")
EndSub

Subconn_db()
Setconn=CreateObject("adodb.connection")
conn.open"course_dsn","course_user","course_password"
Setrs=CreateObject("adodb.recordset")
rs.open"select*fromuser_info",conn,1,1

Ifrs.recordcount>0Then
Fori=1Tors.recordcount
Response.write"<br>"&rs("user_name")&"<br>"
Ifrs.EOFThenExitFor
rs.movenext
Next
EndIf
rs.Close
Setrs=Nothing
conn.Close
Setconn=Nothing
EndSub

⑹.增加一新类cutstr

⑺.修正类代码以下:

截取字符串
Functioncutstr(str,length)
IfLen(str)>lengthThen
cutstr=Left(str,length)&"..."
Else
cutstr=str
EndIf
EndFunction

⑻.File>>Save

⑼.File>>makecourse.dll

3.注册组件:MTS和regsvr32.exe

有两种体例注册组件:MTS和利用regsvr32.exe。MTS是值得保举的,由于它具有以下长处:
n静态卸载均衡,进步组件和基于组件的使用程序的晋级性。
n包括发布和提交事务和行列组件的才能,使得更简单与多个组件团结。

要想使组件具有MTS的特征,必需对组件做少量修改。在NT和98下开辟时,必需在项目中援用MicrosoftTransactionServerTypeLibrary,在Windows2000下开辟,必需援用COM+ServiceTypeLibrary。

⑴.regsvr32注册:

regsvr32.exe是system32上面的一个可实行文件,它将组件信息读进注册表,以便Asp挪用。
利用命令行进进组件dll文件地点的目次,实行“regsvr32dll_file_name”便可。


运转regedit,在HKEY_CLASSES_ROOT下就会找到course.conn_db项和course.cutstr项,标明组件注册乐成。


⑵.利用MTS注册:

①.入手下手>>程序>>办理工具>>组件服务

②.睁开目次至以下形态:


③.依照导游,下一步,直到以下对话框,点击“创立一个空的使用程序”:


④.在接上去的对话框中,为使用程序起名为“course”,其他默许,直至完成

⑤.睁开course使用程序,右键,新建一个组件


⑥.依照提醒,持续,呈现以下对话框时,选择“导进已被注册的组件”


⑦.选择我们开辟的组件,下一步,直至完成


⑧.这时候候,能够发明course使用程序下已多了两个组件:


4.在Asp中挪用组件

asp_use_com.asp
<%
asp挪用com组件
setcutstr_obj=server.createobject("course.cutstr")
response.writecutstr_obj.cutstr("abcdefghijk",3)&"<br>"
setcutstr_obj=nothing

setconn_obj=server.createobject("course.conn_db")
conn_obj.conn_db()
setconn_obj=nothing
%>

效果:
abc...

ahyi

tuth

申明挪用乐成。

5.卸载组件

⑴.利用regsvr32注册的组件,利用-u开关卸载:


注重:先辈进组件dll地点的目次,然后利用“regsvr32Cudll_file_name”卸载;卸载后重启IIS便可。

⑵.利用MTS注册的组件,先在“组件服务”中删除对应的使用程序,然后再实行步骤⑴以完全卸载组件。


6.Dll组件寄存地位和权限设定

⑴.我们只必要把编译天生的Dll文件拷贝出来便可,其他的文件不必做处置
⑵.要把Dll放到Web站点以外,如system32目次里,避免被下载
⑶.Dll的文件权设置为System读取,Internet用户遍历文件夹/运转文件
⑷.Dll在IIS中往失落一切的权限,如读取,剧本志愿会见等
经由上述处置,能够确保Dll文件的平安。

7.其他

怎样在组件中利用Asp的工具以便利的将Asp代码移植为COM组件?


5、IIS最优化设置

1.Web站点选项卡:IP、端口、假造主机、毗连、日记
2.ISAPI选择器:到场PHP和JSP撑持
3.主目次设置选项卡:IIS权限设定(分离文件权)、实行允许、使用程序回护、映照、缓冲、父路径、堕落信息
4.其他选项卡:自界说毛病、Http头、目次平安性、文档
5.文件紧缩带来的优点和害处


6、其他

1.发送邮件(JMail;Mssmtp)

利用MicrosoftSmtp发送电子邮件
⑴.安装MicrosoftSMTPService
⑵.设置MicrosoftSMTPService
⑶.代码部分:
mail_smtp.asp
<%
subsendmail(fromwho,towho,subject,body)
dimmymail
setmymail=server.createobject("cdonts.newmail")
mymail.from=fromwho
mymail.to=towho
mymail.subject=subject
mymail.body=body
mymail.send
setmymail=nothing
endsub
%>
</p>ASP一般认为只能运行在IIS上,正如前面所提到的,这并不是十分正确,事实上,ASP也能运行在Apache上。ApacheASP可在任意Apache服务器上运行有限的ASP功能,所需做的,只需打开mod_perl。

不帅 发表于 2015-1-20 10:49:51

以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。

小魔女 发表于 2015-1-29 06:49:03

Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)

透明 发表于 2015-2-5 23:35:35

Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件

因胸联盟 发表于 2015-2-14 05:29:47

在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。

飘灵儿 发表于 2015-3-4 04:55:46

以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。

小妖女 发表于 2015-3-11 17:07:28

尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。

海妖 发表于 2015-3-19 02:34:25

多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。

冷月葬花魂 发表于 2015-3-27 05:17:33

Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)
页: [1]
查看完整版本: ASP编程:Asp深度揭密(下)