萌萌妈妈 发表于 2015-1-16 22:55:31

ASP网页编程之剧本工具与服务器组件的对照

当然了,现在国内CRM厂商的产品与其说是CRM,但从至少从我的角度分析上来看,充其量只是一个大型的进销存而已了,了解尚浅,不够胆详评,这里只提技术问题对照|工具|服务器|剧本
在前几章中,我们已研讨了两类分歧的工具:一类是ASP工具模子的内置部分,另外一类是剧本运转期库供应的工具。本章将先容第三类能用于ASP的工具,取名为举动服务器组件(大概就称为服务器组件)。
这些组件在良多场所下就好像在扫瞄器或在像VisualBasic编程情况顶用于客户端剧本中的传统ActiveX控件一样,可是这些组件可在服务器上运转,而不是一个只能运转在客户机上的工具。
如今的成绩是:这些组件来自那里?个中一部分是由惯例的ASP/IIS安装程序供应的,而另外一部分能够从Web上收费或有偿取得。本章会商ASP的各类组件的次要用处,然后先容可失掉的其他组件的几个典范。一旦感到到利用这些举动服务器组件轻车熟路,你就会绝不吃力将其他供给商产物嵌进到本人的ASP页面中。本章前面有一个第三方组件的列表,本书前面还将先容怎样创立本人的组件。
另有一些用于ASP的组件,但本章禁绝备会商。静态Web网站手艺的基础用处之一是公布间接从数据库办理体系和其他范例的数据存储取得的信息,这一用处和从数据库或其他数据存储中搜集数据和存进数据的需求,促使程序员开辟服务器端编程。为了利用ASP完成这些义务,我们能够充实使用称为ActiveX数据工具(ActiveXDataObjects,ADO)库的组件集。因为它触及的内容良多,很难在本章中论述分明,还要思索的其他的组件,本书从第8章入手下手报告相干的内容。
本章要会商的内容有:
·服务器组件与在ASP中利用的其他工具的区分。
·扼要申明怎样实例化工具,并失掉服务器组件的援用。
·ASP3.0和IIS供应的可安装组件,比方ADRotator、ContentLinking、PageCounter和Tools等组件。
·一些第三方供应的组件。

6.1剧本工具与服务器组件的对照
前一章已申明了各类剧本工具,这些工具关于ASP/IIS来讲都是从剧本运转库(scrrun.dll)中失掉的,主要的是不要把这些工具与服务器组件(即本章的主题)搅浑一同。
服务器组件一般在其本人的DLL或可实行文件中完成,比方本章将要会商的“ContentLinking”组件,就是由nextlink.dll完成的。一旦在服务器安装和注册这个DLL文件,那末其供应的工具就能够在ASP所撑持的任何剧本言语中利用。组件与体系情况的干系如-1所示:


利用组件服务器组件
前一章已先容了工具和组件在页面中通用的实例化办法,利用服务器组件和利用剧本运转期库工具的办法完整分歧,独一的区分是,不像剧本工具,服务器组件一般作为独自的DLL文件完成,并且大概请求在利用前先运转一个安装程序,大概手工注册该组件(假如这些组件在ASP缺省安装时未注册)。
1.CreateObject办法
一样平常说来,能够在一个ASP页面中利用ASP内置的Server工具的CreateObject办法创立一个工具,比方:
SetobjThis=Server.CreateObject("this.object")inVBScript
或:
varobjThis=Server.CreateObject(this.object);//inJScript
如许就在变量objThis中创立了该工具的援用,然后能够在剧本中利用该工具;换句话说,能够在代码中依据必要把持其属性及挪用其办法。
2.利用<OBJECT>元素
一样可使用惯例的<OBJECT>元素创立一个工具该办法一样合用于在Web扫瞄器页面中创立工具。ASP撑持HTML<OBJECT>元素的特别完成,并且我们可使用这一办法在页面中安排一个工具。要在一般的.asp文件中界说一个组件或剧本工具的实例,利用上面语句:
<OBJECTRUNAT="SERVER"SCOPE="PAGE"ID="objThis"
CLASSID="CLSID:OACE4881-8305-11CF-9427-444553540000">
</OBJECT>
我们利用SCOPE属性来设定工具的局限,选项是“SESSION”、“APPLICATION”和“PAGE”。假如在一般的.asp文件中利用<OBJECT>元素,那末必需同时利用“PAGE”属性,并疏忽SCOPE属性,由于创立的工具只能在它被实例化的页面中利用。假如在global.asa文件中利用<OBJECT>元素,则所创立的工具可在以后会话或全部使用程序中利用,因而SCOPE属性可设置为“SESSION”和“APPLICATION”。
3.检测工具实例的存在
常常呈现的毛病是妄图创立一个未安装(或未注册)的工具的实例,大概在CreateObject办法或<OBJECT>元素中利用毛病的工具ProgID。缺省形态下,ASP会呈现毛病并中断页面的实行。
给页面增加一些程序代码,在会见工具之行进行检测是需要的。在VBScript中,能够做到这一点,办法是:封闭缺省的毛病处置,然后利用IsObject函数检察工具是不是真的援用了一个工具:
inVBScript:

OnErrorResumeNextturnoffdefaulterrorhandling
SetobjThis=Server.CreateObject("this.object")

IfIsObject(objThis)Then
theCreateObjectmethodsucceeded
OnErrorGoto0turnthedefaulterrorhandlingbackon

restofthescriptgoeshere

Else
Response.Write"Sorry,thispagecannotbeaccessedatpresent"
Response.Flush
Response.End
EndIf

在JScript言语中,可使用JScript5.0剧本引擎中新的毛病处置特征,这在第1章中先容过。
//inJScript:

try{
varobjThis=Server.CreateObject(this.object);

//restofthescriptgoeshere
}

catch(exception){
Response.Write(Sorry,thispagecannotbeaccessedatpresent);
Response.Flush();
Response.End();
}



ASP是依赖组件的,能访问数据库的组件好多就有好多种,再有就是你微软的工具可是什么都要收钱的啊!

深爱那片海 发表于 2015-1-20 06:11:31

用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。

仓酷云 发表于 2015-2-5 22:49:09

ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。

若相依 发表于 2015-2-14 01:20:04

学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:

冷月葬花魂 发表于 2015-3-4 03:46:10

跟学别的语言一样,先掌握变量,流程控制语句(就是ifwhileselect)等,函数/过程,数组

若天明 发表于 2015-3-11 16:07:09

下面简单介绍一下我学习ASP的方法,希望对想学习ASP的朋友有所帮助...

再见西城 发表于 2015-3-19 01:49:23

哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的?

活着的死人 发表于 2015-3-27 03:09:44

Session:这个存储跟客户端会话过程的数据,默认20分钟失效

不帅 发表于 2015-3-27 03:09:45

我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。

只想知道 发表于 2015-3-27 03:09:45

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

变相怪杰 发表于 2015-3-27 03:09:45

多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。
页: [1]
查看完整版本: ASP网页编程之剧本工具与服务器组件的对照