首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 网络编程-> ASP教程
ASP服务器组件的编程-ASP教程,组件开发
作者:网友供稿 点击:71
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 
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://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·在ASP.NET中使用Office Web Components (OWC)创建统计图-.NET教程,数据库应用
·windows系统下jsp+mysql+tomcat的配置-JSP教程,Application/Applet
·把aspx文件编译成DLL文件-.NET教程,Asp.Net开发
·Haneng.com的简单留言板制作源程序例子-ASP教程,ASP应用
·使用VB实现邮箱自动注册(一):表单自动提交-.NET教程,VB.Net语言
·VS.NET安装指南(To菜鸟)-.NET教程,Asp.Net开发
·web下水晶报表的使用!-.NET教程,Web Service开发
·C# 静态成员和方法的学习小结-.NET教程,数据库应用
·IIS的使用-ASP教程,ASP基础
·asp讲座之二:读取通过表单发送的数据
最新文章
·photoshop鼠绘实例:浪漫夏夜壁纸_photoshop教程
·买卖中小网站交易的一些细节问题_站长心得
·七招打造最安全的windows xp操作系统_windows xp
·做google adsense最佳和最重要的要诀_网赚技巧
·上下文关联广告清单(内文广告)推荐_网赚技巧
·广告联盟,痛定思痛_网赚技巧
·insenz首批广告费发放给站长_网赚技巧
·李彦宏:三分之一时间用在寻找人才_站长访谈
·中国汽车资源网杨锁民:网络寒冬时下海_站长访谈
·做it新闻资讯网站应先学新浪_站长心得
相关主题
  • asp服务器端的验证类-ASP教程,客户端相关
  • ASP服务器组件编程心得-ASP教程,组件开发
  • ASP服务器组件的编程-ASP教程,组件开发
  • asp服务器组件编程心得
  • asp服务器组件的编程
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭