动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP实例
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ ASP实例 ]的信息

本月文章推荐
.实 现 滚 动 新 闻.
.转换字符串带有http://的超级链接.
.完整的访问统计系统(一:数据库.
.股票报价的WebService之五.
.各种存储过程使用指南.
.用ASP实现号码转换程序实例.
.CDONTS发电子邮件例子.
.网络寻呼机数据库版显示消息show.
.超长字符的智能分页-支持HTML&nb.
.聊天室建设详解一.
.利用ASP+XML架设在线考试系统&nb.
.XmlHttp异步获取网站数据的例子.
.用Asp隐藏文件路径实现防盗链.
.中文的无组件文件上传ASP函数.
.通过ASP与ACCESS数据库建立连接(.
.功能非常全面的日期处理函数.
.一个免费的邮件列表源程序(二).
.一个用c#写的扫描asp源码漏洞的应.
.使用AspImage制作图形(二).
.深入讲解 ASP+ 验证(三).

ASP服务器组件的编程

发表日期:2000-10-30 |


重庆出版社电脑中心 陈刚
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页面以测试我们的Server Side Component。
启动Visual InterDev,开始一个新的工程:New Projects,然后选取Web Project Wizard,在Project Name中输入
TestRandimage,点击OK后,Visual InterDev产生一些辅助文件,为新的工程做好准备,然后自动打开该工程。为了方便
测试,拷贝几个图形文件到Images文件夹中,文件类型可以是浏览器支持的任意图形文件,如BMP、TIF、GIF等 。
在该工程中建立ASP页面,点击菜单File | New ,在New 对话框中选Files | Active Server Page ,并指定其名字:
Randimage.asp。Visual InterDev将会为我们产生一个空的框架,在其中用手工加入代码。完成后的代码如下

<%@ LANGUAGE="VBSCRIPT" %>
<html><head>
</head>
<body>
<h5>测试randimage 组件,随机显示一个图形文件<h5>图形文件路径:
<%=server.mappath("images")%><br>
<%set
ox=server.createobject("randshowfile.randimage")'实例化组件ox.filepath=serve
r.mappath("images")
%>
<img src="<%=ox.filepath&ox.show%>">
<%set ox=nothing '使用后释放组件%>
</body>
</html>
由于Web页面使用的路径(URL)都是虚拟路径(Virtual Directory),必须使用server.mappath()将其转换到物理路径
(Physical Directory)。例如,此处的图形文件夹images的虚拟路径是://Servername/TestRand image/Images(其中
Servername是你的Web服务器的名字),其对应的物理路径是C:\Inetpub\wwwroot\TestRandimage\Images 。如果不把
Images映射到物理路径则组件找不到该文件夹,无法正常工作。 代码完成后测试之,注意到在每次打开或刷新该页面时,
会有一个不同的图形显示在上面。

5.结束语

使用SSC可以大大丰富Web应用的功能、提高编程效率;完成HTML或VBScript等不易完成的任务;封装特定的商业逻辑等。
Server Side Component(以及ActiveX)等组件的编程也发展成为一项有利可图的事业。在Internet上可以找到很多有用
的组件(免费的或不免费的),有兴趣者可到www.15seconds.com、www.activeserverpages.com、www.serverobjects.com
等站点上查看。如果你有一
个新颖有用的组件,也可以发表在这些站点上,说不定你可以因此得到一笔可观的收入呢。
上一篇:转换字符串带有http://的超级链接字符串为真正的超级链接(源码) 人气:10850
下一篇:第一个ASP组件:设置服务器日期时间组件 人气:11121
浏览全部的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-10-13 爬爬思特新闻管理系统 v2.0 Beta1
2008-10-13 Pligg v9.9.5 Beta
2008-10-13 广优邮件发送系统 v2.1
2008-10-13 缤纷互动视频交友 v3.1 RC
2008-10-13 MyShop网络商城 build 081005
2008-10-13 Chyrp 超轻量级开源博客引擎 v2.
2008-10-13 162100静态(论坛/文章)系统 v2.4
2008-10-13 金博人才招聘求职网黄金版 v4.2
2008-10-13 愚人笔记 v4.0
2008-10-11 联系人分组工具 v1.1 中文破解版
2008-10-11 FaceMelter变脸 v2.0 汉化破解版
2008-10-11 PathTracker道路跟踪仪 v1.2 破解
2008-10-11 Rooms手机聊天室 v0.6.7 破解版
2008-10-11 RemoteDesktop远程桌面 v1.0 破解
2008-10-11 ProRemote远程调音台 v1.0.1 破解
2008-10-11 PicShare照片共享 v1.0.0 破解版
2008-10-11 Photogene照片编辑器 v1.5 汉化破
2008-10-11 WriteRoom共享文档 v1.0 破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵
SEO対策 中国語教室 ホームページ作成