种豆资源网

当前位置:首页 > 百科 > 百科综合 / 正文

ASP组件和对象

(2019-08-30 13:15:10) 百科综合

ASP组件和对象

ActiveX 组件是建立强大的 Web 应用程式的关键。组件提供了用在脚本中执行任务的对象。ASP 同样提供了可在脚本中使用的内建对象。

ASP组件和对象

ActiveX 组件是建立强大的 Web 应用程式的关键。组件提供了用在脚本中执行任务的对象。ASP 同样提供了可在脚本中使用的内建对象。本主题将讨论如何使用组件提供的对象以及由 Active Server Pages 直接提供的内建对象。

关于组件

ActiveX 组件是一个档案,该档案包含执行某项或一组任务的代码。组件可以执行公用任务,这样就不必自己去创建执行这些任务的代码。例如,股票行情收报机组件可以在 Web 页上显示最新的股票报价。ASP 带有可以直接使用的组件,如 Database Access 组件。从第三方开发者处获得可以可选的组件。或者也可以编写自己的组件。
可以利用组件作为脚本和基于 Web 应用程式的基本构造块。只要知道如何访问组件提供的对象。即使是位编写脚本的新手,也可以在不了解组件运作方式的情况下编写脚本。总之,组件使您不用学习编程就能够编写强大的脚本。
如果您是位 Web 应用程式的开发者,可以通过编写组件封装商务逻辑。例如,可以编写组件来计算产品的销售税。然后可以在处理销售订单的脚本中调用这个组件。在订单的处理过程中独立计算税率可以在某地销售税改变的时候只更新组件,而无须更改整个处理过程。可以使用任何支持组件对象模型 (COM) 的语言来编写组件,如,C、C++、Java 或 Visual Basic。如果熟悉 COM 编程,ActiveX 组件就是 Automation 伺服器。要在 Web 伺服器上运行,ActiveX 组件不能有图形用户接口元素,如 Visual Basic 的MsgBox函式。
组件是可以重複使用的。在 Web 伺服器上安装了组件后,就可以从 ASP 脚本、ISAPI 应用程式、伺服器上的其他组件或由另一种 COM 兼容语言编写的程式中调用该组件。

生成

组件是包含在动态程式库 (.dll) 或执行档 (.exe) 中的可执行代码。组件可以提供一个或多个对象以及对象的方法和属性。要使用组件提供的对象,请创建对象的实例并将这个新的实例分配变数名。使用 ASP 的Server.CreateObject方法可以创建对象的实例。接着,使用脚本语言的变数分配指令为对象实例命名。创建对象实例时,必须提供实例的注册名称 (PROGID)。对于由 ASP 提供的基本组件,可以从参考页中获得对象的 PROGID。
例如,ASP 的 Ad Rotator 组件在图形广告中任意循环。Ad Rotator 组件提供了一个被称为 Ad Rotator 对象,该对象的 PROGID 是 "MSWC.AdRotator"。要创建一个 Ad Rotator 对象的实例,请使用下列指令:
VBScript:
<% Set MyAds = Server.CreateObject("MSWC.AdRotator") %>
JScript:
<% var MyAds = Server.CreateObject("MSWC.AdRotator") %>
如果您已经非常熟悉 VBScript 或者 JScript ,将会注意到没有使用创建新对象实例的脚本语言函式,如 VBScript 中的CreateObject或 JScript 中的New。您必须使用 ASP 的Server.CreateObject方法,否者 ASP 无法跟蹤脚本语言中对象的使用。
使用 HTML <OBJECT> 标籤同样可以创建对象实例。您必须为 RUNAT 属性提供伺服器值,同时也要为将在脚本语言中使用的变数名提供 ID 属性组。使用注册名 (PROGID) 或注册号码 (CLSID) 可以识别该对象。下面的例子使用注册名 (PROGID) 创建 Ad Rotator 对象的实例:
<OBJECT RUNAT=Server ID=MyAd PROGID="MSWC.AdRotator"></OBJECT>
下面的例子使用注册号码 (CLSID) 创建 Ad Rotator 对象的实例:
<OBJECT RUNAT=Server ID=MyAd CLASSID="Clsid:1621F7C0-60AC-11CF-9427-444553540000"></OBJECT>

创建

使用 Java 语言编写的 ActiveX 组件可作为 Java 类而不是 DLL 提交。要使用Server.CreateObject创建 Java 类对象的实例,必须使用 Javareg 程式将该类注册为 COM 组件。然后就能够以 PROGID 或 CLSID 使用Server.CreateObject了。
如果对象实例不需要访问 ASP 内建对象和参与事务,就可以使用由 Java 监视程式提供的更为简单的机制直接调用 Java 类。必须用 Microsoft virtual machine for Java 2.0(由该 Internet Information Server 和 Personal Web Server 的发布版提供)使用 Java 监视程式。
如果要使用监视程式实例化对象,就必须使用 VBScript 或者 JScript 的GetObject指令并以java:classname的形式提供 java 类的全名。下面这个关于 VBScript 的例子生成了 JavaDate对象的实例。
<% Dim dateSet date = GetObject("java:java.util.Date")%><p> The date is <%= date.toString() %>
通过调用GetObject而不是Server.CreateObject生成的对象不能访问 ASP 内建对象也不能参与事务处理。

内建对象

ASP 提供执行任务的内建图像。例如,Request对象存储从 HTML 表格参考。

调用 Object

方法是可以在对象上所执行或使用对象执行的活动。调用方法的一般语法为:
Object.Methodparameters
参数随着方法的不同而不同。
例如,可以按照下列的指令,使用Response内建对象的Write方法将信息传送到浏览器:
<% Response.Write "Hello World" %>
注意一些脚本语言不支持Object.Method语法。如果使用的语言不支持该语法,那幺为了将该语言作为主脚本语言,就必须在注册表中加入条目。

设定对象属性

属性是描绘对象的特徵值。属性定义对象的特徵(如对象类型)或对象的状态(如启用或禁用)。常规语法为:
Object.Property
可以读取并设定属性值。对某些对象,还可以添加新属性。
例如,Ad Rotator 组件有Border属性,该属性指定广告是否有框线及框线的粗细。下面的表达式指明没有框线:
<% MyAds.Border = 0 %>
可以使用 ASP 输出指令显示某些属性的当前值。例如,如果浏览器仍然与伺服器连线,下面的命令将返回 TRUE:
<%= Response.IsClientConnected %>

标 签

搜索
随机推荐

Powered By 种豆资源网||