ASP服务器组件的编程

2016-01-29 17:19 4 1 收藏

ASP服务器组件的编程,ASP服务器组件的编程

【 tulaoshi.com - ASP 】

  重庆出版社电脑中心 陈刚
1.什么是ASP服务器组件

ASP(Active Server Page)是当今开发交互式Web页面、Web数据库应用最强大的技术。在其中可以混用HTML、DHTML、
ActiveX、VBScript或JavaScript。当这些技术都无法奏效时(例如进行高密度的数学运算、封装特定的数据库处理逻辑
等),可以使用服务器组件(Server SideComponent)进一步扩展ASP的能力。
Server SideComponent实际上是运行在服务器上的一个DLL,它可以完成常规DLL所能胜任的任何任务。不同之处是:它由
ASP页面调用、并以Web页面为交互对象,读入用户的输入(Web页面上各输入域的值),处理后返回结果到Web页面。这些
交互当然都要通过Web服务器作为中介。可以用VB、VFP、VC++、C++Builder、Delphi等任意支持COM技术的语言编写。由于
它可以利用服务器的任何资源,其功能仅受限于你的想象力。
目前支持ASP的Web服务器有IIS(Internet Information Server,WinNT Server4.0自带)和PWS(Personel Web Server,
用于Win95环境)。并要求安装VisualInterDev中的Server Components:FrontPage Server Extensions、 Active
ServerPages和Client Components:Visual InterDevClient。可以把这些都安装在同一台机器上,这样可以在单机上方便
地编程、调试。
下面用VB5.0开发一个Server Side Component(一个ActiveXDLL),以实现Web页面上的随机图形显示,相信它会为你的站
点增色不少。

2. Web页面上的随机图形显示

一个漂亮的图形可以使Web页面更具吸引力,使人流连忘返。但一旦我们的Web页面设 计完成,这个图形也就确定下来。换
言之,除非我们重新修改HTML代码,则每次打开这个页面,看到的都是同样一个图形。那么能否让用户在每次进入我们的
站点时,都能看到不同的画面呢?例如:每次这个Web页面被访问时,从一个包含若干图形文件的文件夹中随机选取一个,
在该页面上显示,使访问该页面的用户每次都会得到不同的视觉享受。
这个要求用HTML、DHTML或VBScript语言无法做到,这里我们用一个ASP服务器组件实现之。

3.用VB5.0建立ActiveX DLL

首先在VB5.0中新建一个Project ,类型为ActiveX DLL :设定属性如下:
Project Name:RandShowFile,
ClassModule Name:Randimage
其中类Randimage的代码如下:
Option Explicit
Private mvarFilePath As String 'local copy
Public Property Let FilePath(ByVal vData As String)
'设置文件路径
If Right(vData, 1) = "/" Or Right(vData, 1) = "" Then
mvarFilePath = vData
Else
If InStr(vData, "/") < 0 Then
mvarFilePath = vData & "/"
Else
mvarFilePath = vData & ""
End If
End If
End Property

Public Property Get FilePath() As String
'取得文件路径
FilePath = mvarFilePath
End Property

Private Sub Class_Initialize()
mvarFilePath = ""
End Sub

Public Function Show(Optional ByVal Extension As String) As String
'从指定文件路径中随机选取并返回一个文件名
Dim MyPath As String
Dim MyName As String
Dim List() As String
Dim FileCount As Integer
Dim n As Integer
On Error GoTo badnews
If Len(mvarFilePath) <= 1 Then
Show = "NoFilePathSpecified "
Erase List
Exit Function
Else
If IsMissing(Extension) Then
Extension = "*.*" '如果扩展名没有指定,则默认为*.*
End If
MyPath = mvarFilePath & Trim(Extension) ' Set the path.
MyName = Dir(MyPath, vbNormal) ' Retrieve the first entry.
End If
FileCount = 0
ReDim List(10)
Do While MyName < ""
List(FileCount) = MyName
FileCount = FileCount + 1
If FileCount = UBound(List) Then
n = UBound(List) + 10
ReDim Preserve List(n)
End If
MyName = Dir()
Loop
If FileCount = 1 Then
Randomize ' 初始化rand()函数,否则每次将产生相同的数字
n = Int(FileCount * Rnd()) ' 产生在1 和list1.listcount 之间的随机数.
Show = List(n)
Erase List
Exit Function
Else
badnews:
Show = "NoFileFound"
Erase List
End If
End Function
在编译之前,注意要在此Project中加入一个Module并在其中加入代码
Sub Main()
End Sub
然后在菜单Project | RandShowFile Projectise?引出的对话框中,设Startup
Object为Sub Main。最后在菜单File中,选Make Randimage.dll。到此,我们的SSC
就开发完成,并且它已自动注册在机器上。

4.在ASP页面中使用服务器组件

下面将建立一个ASP页面以测试我们

来源:http://www.tulaoshi.com/n/20160129/1500980.html

延伸阅读
标签: ASP
  使用定制的服务器控件 在asp+中提供了45个已经做好了的服务器控件,我们可以将他们象黑盒子一样的使用。除此以外,开发者还可以使用任何第三方开 发的服务器控件 在下面的例子中,我们要用到一个通过<acme:calendar runat=server标签声明的组件,请注意,在文件的第一行必须使用<% Register % 来声明 "Acme Xml "标签...
标签: ASP
  使用定制的服务器控件 在asp+中提供了45个已经做好了的服务器控件,我们可以将他们象黑盒子一样的使用。除此以外,开发者还可以使用任何第三方开发的服务器控件 在下面的例子中,我们要用到一个通过<acme:calendar runat=server标签声明的组件,请注意,在文件的第一行必须使用<% Register % 来声明 "Acme Xml "标签...
标签: Web开发
---- 音乐服务器(Music Server)是指一个提供音乐在线服务的服务器,它包括高端提供门户服务的网站、Web数据库和低端的操作平台、硬件设施。目前,在Internet和Intranet上有不少这样的站点,特别是在一些高速宽带的局域网中(如校园网),音乐服务器给上网的朋友提供了休闲娱乐的好去处,同时也给网站带来了较高的访问率。 ----像其他站点一...
标签: ASP
  创建ASP页面 在ASP页面上一切都变得非常酷。你用表单中的值来驱动对索引服务器进行查询的对象。 整个过程是这样的: ◆ 打开记录集。 ◆ 用标准ADO 方法,一步步地走过记录集。 <% "Create a Query object, initialize it using "SetQueryFromURL, and dump the object state "set the query object Set obj...
       简单的WEB服务器 一个简单的WEB服务器将由列表9.2这样构建.当然,还必须要对方法和回应事件进行改进.简单的服务器不会分析和存储请求头.新的WEB服务器将分析和存储请求,为以后的处理作预备.为了达到这个目的,你必须有一个包含HTTP请求的类. HTTPrequest类 列表9.5列出了一个完整的HTTPrequest...

经验教程

597

收藏

75
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部