老尸 发表于 2015-1-16 22:42:26

ASP教程之ASP教程:第十四篇 ActiveX 组件

缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。当你用ASP编写服务器端使用程序时,必需依托ActiveX组件来壮大Web使用程序的功效,比如:你必要毗连数据库,对数据库举行在线操纵等等,本文从本篇入手下手将连续给人人先容ASPActiveX组件的利用办法。  从明天入手下手我们将正式进修ASP的精髓部分--ActiveX组件。现实上,当你用ASP编写服务器端使用程序时,必需依托ActiveX组件来壮大Web使用程序的功效,比如:你必要毗连数据库,对数据库举行在线操纵大概对WEB服务器上的文件体系举行操纵,亦或你必要一个WEB告白互换程序,一切这统统你都必需经由过程挪用ASP内建的ActiveX组件或本人编写所需的组件来完成。
  那末,事实甚么是ActiveX组件呢?它又是怎样运作的呢?实在ActiveX组件是一个存在于WEB服务器上的文件,该文件包括实行某项或一组义务的代码,组件能够实行公用义务,如许就不用本人往创立实行这些义务的代码。比方,股票行情收报机组件能够在Web页上显现最新的股票报价。当你在WEB服务器上安装完ASP情况后,就能够间接利用它自带的几个经常使用组件,如DatabaseAccess组件。固然你也能够从第三方开辟者处取得可选的组件,也能够编写本人的组件。你能够使用组件作为剧本和基于Web使用程序的基础机关块,只需晓得怎样会见组件供应的工具,即便你是位编写剧本的老手,也能够在不懂得组件运作体例的情形下编写ASP程序。总而言之,ActiveX组件使您不必进修庞大的编程就可以够写出壮大的WEB服务器端剧本。假如您是位Web使用程序的开辟者,可使用任何撑持组件工具模子(COM)的言语来编写组件,如,C、C++、Java或VisualBasic。假如你熟习COM编程,ActiveX组件就是Automation服务器。可是要在Web服务器上运转,ActiveX组件不克不及有图形用户接口元素,如VisualBasic的MsgBox函数。组件是能够反复利用的。在Web服务器上安装了组件后,就能够从ASP剧本、ISAPI使用程序、服务器上的其他组件或由另外一种COM兼容言语编写的程序中挪用该组件。
  那末我们在ASP中应当怎样挪用组件呢?如前所述,组件是包括在静态链接库(.dll)或可实行文件(.exe)中的可实行代码。组件能够供应一个或多个工具和工具的办法和属性。要利用组件供应的工具,我们起首要创立工具的实例并将这个新的实例分派变量名。利用ASP的Server.CreateObject办法能够创立工具的实例。接着,利用剧本言语的变量分派指令为工具实例定名。创立工具实例时,必需供应实例的注册称号“PROGID”。以下要创立一个AdRotator工具的实例:
  <%SetMyAds=Server.CreateObject("MSWC.AdRotator")%>
  我们必需利用ASP的Server.CreateObject办法来创立工具实例,否者ASP没法跟踪剧本言语中工具的利用。
  利用HTML<OBJECT>标签一样能够创立工具实例,但必需为RUNAT属性供应服务器值,同时也要为将在剧本言语中利用的变量名供应ID属性组。利用注册名(PROGID)或注册号码(CLSID)能够辨认该工具。上面的例子利用注册名(PROGID)创立AdRotator工具的实例:
  <OBJECTRUNAT=ServerID=MyAdPROGID="MSWC.AdRotator"></OBJECT>
  上面列出了ASP可安装的经常使用组件。
AdRotator创立一个AdRotator工具,该工具可按指定企图在统一页上主动轮换显现告白。
BrowserCapabilities创立一个BrowserType工具,该工具决意会见Web站点的每一个扫瞄器的功能、范例及版本。
DatabaseAccess供应用ActiveXDataObjects(ADO)对数据库的会见。
ContentLinking创立一个NextLink工具,该工具可天生Web页内容列表,并象书一样将各页顺续毗连。
FileAccess组件供应文件的输出输入会见。
CollaborationDataObjectsforNTS组件能够疾速、烦琐的在Web页上增加收发邮件功效。该组件只合用于InternetInformationServerforWindowsNT?Server。
MyInfo创立一个MyInfo工具,该工具追踪团体信息,比方站点办理员的姓名、地点及显现选择。
Counters创立一个Counters工具,该工具能够创立、保留、增添或检索恣意数目的自力计数器。
ContentRotator主动翻转Web主页上的HTML内容字符串。
PageCounter纪录并显现Web页被翻开的次数。
  如今WEB告白几近充溢了全部收集,那末事实怎样在你本人的网站上创建一个切合告白范畴尺度功效的告白体系呢?谜底是使用ASPADRotator组件!它同意在每次会见ASP页面时在页面上显现新的告白,而且供应了很强的功效,比方:扭转显现在页面上的告白图像的才能、跟踪特定告白显现次数的才能和跟踪客户端在告白上单击次数的才能。ADRotator组件的事情是经由过程读取ADRotator企图文件来完成的,该文件包含与要显现的图像文件的地址有关的信息和每一个图像的分歧属性,上面就是一个尺度的ADRotator企图文件:
---ADROT.TXT---
REDIRECT/scripts/adredir.asp
WIDTH440
HEIGHT60
BORDER1
*
ads/homepage/chinabyte.gif
http://www.chinabyte.com/
CheckouttheITsite
2
ads/homepage/gamichlg.gif
-
SponsoredbyFlyteworks
3
ads/homepage/asp.gif
http://www.aspallian.com/
GoodASPsiteonnet
3
ads/homepage/spranklg.gif
http://www.clocktower.com/
The#1Sportssiteonthenet
2
  该段代码的前四行包括告白的全局设置。Redirect行指出告白将成为其热毗连的URL,注重这里不是为告白自己指定的URL,而是将挪用的两头页面的URL,如许我们就能够经由过程这其中间页面跟踪单击告白的次数。该RedirectURL将与包括两个参数的查询字符串一同挪用:特定告白主页的URL和图像文件的URL。星号下面的其他三行复杂申明怎样显现告白。前两行以像素为单元指定网页上告白的宽度和高度,默许值是440和60个像素。后一行,一样是以像素为单元指定告白周围超链接的边框宽度,默许值是1个像素。假如将该参数设置为0,则将没有边框。
  星号上面的行以每四举动一个单元形貌每一个告白的细节。在此例中共有16行,形貌四个告白。每一个告白的形貌包括图像文件的URL、告白的主页URL(假如告白客户没有主页,请在该行写上一个连字符“-”,指出该告白没有链接)和图像的替换笔墨和指定该页与其他页瓜代显现频次的数值。
  图像是重定向页面的热毗连,它在查询字符串中设置了两个值,url=/scripts/adredir.asp和image=/ads/homepage/asp.gif。要断定告白显现的频次,能够将企图文件中一切告白的权值相加,在该例中总数是10,那末aspallian的告白权值为3,这意味着AdRotator组件每挪用十次,它则显现3次。
  重定向文件是用户创立的文件。它一般包括用来剖析由AdRotator工具发送的查询字符串的剧本并将用户重定向到与用户所单击的告白所相干的URL。用户也能够将剧本包括进重定向文件中,以便统计单击某一特定告白的用户的数量并将这一信息保留到服务器上的某一文件中。增添计数器和重定向用户是经由过程上面两行ASP剧本来完成的:
<%
Counter.Increment(request.querystring("url"))
response.redirect(request.querystring("url"))
%>
  如今我们看一下AdRotator组件是怎样在页面中利用的,起首必需利用Server.CreateObject办法实例化AdRotator工具。AdRotator组件的PROGID属性是MSWC.AdRotator。完全的代码以下:
<%Setad=Server.CreateObject("MSWC.AdRotator")%>
<%=ad.GetAdvertisement("/ads/adrot.txt")%>

  AdRotator组件撑持的独一办法是GetAdvertisement,它只要一个参数:AdRotator企图文件的称号。注重指向文件的路径是从以后假造目次的绝对路径,物理路径是不同意的。GetAdvertisement办法从Rotator企图文件中猎取下一个企图告白的具体申明并将其格局化为HTML格局。上面的HTML由GetAdvertisement办法天生且被增加到网页的输入中,以便显现Rotator企图文件中的下一个告白。
<AHREF="http://www.chinabyte.com/scripts/adredir.asp?http://www.aspallian.com/"></A>
  利用AdRotator组件我们能够间接经由过程工具属性而不是企图文件中的设置来间接把持某些告白特征,其可用属性以下:
  Border指定告白边框的巨细。
  Clickable指定告白是不是为超链接。
  TargetFrame指定显现告白的框架的称号。
<%
Setad=Server.CreateObject("MSWC.AdRotator")
ad.Border=0
ad.Clickable=true
ad.TargetFrame=AdFrame
ad.GetAdvertisement("/ads/adrot.txt")
%>
  经由过程下面的进修,信任你已可以纯熟使用ASP的内建AdRotator组件为本人的网站创建一个尺度的告白显现程序了。你是不是难以信任统统竟是云云的复杂?实在真正能令你震动的还在背面呢,敬请存眷下一篇ASPActiveX组件年夜揭密
asp,你就只能等着微软给你解决,它不乐意你就只好悲催。而且asp跑在windows服务器上,windows服务器跟linux比起来简直弱爆了!

山那边是海 发表于 2015-1-19 21:24:08

掌握asp的特性而且一定要知道为什么。

兰色精灵 发表于 2015-1-25 10:14:35

ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:

再见西城 发表于 2015-2-8 06:43:21

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

第二个灵魂 发表于 2015-2-24 17:47:20

接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。

admin 发表于 2015-3-7 12:52:43

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

分手快乐 发表于 2015-3-15 05:49:41

学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。

飘灵儿 发表于 2015-3-21 19:09:09

ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。
页: [1]
查看完整版本: ASP教程之ASP教程:第十四篇 ActiveX 组件