当前位置:首页>> 网站建设知识>> 网站建设知识

全文搜索

精华导读

·网站知识:虚拟中的真实:虚拟主机应用初探
·如何做好互联网的策划
·自动分词与中文搜索引擎
·网页文章的优化
·网站的一些基础小知识
·把网站变成卖场
·细说选择.cn域名的七大理由
·网站性感域名十大原则
·大型商务网站的SEO优化误区
·导致搜索引擎收录困难的5种原因
·网站建设中meta标签之详解
·网页制作中Web网页安全色谱
·网页设计中HTML常范的五个错误
·如何建立网站地图(site map)
·网站建设时如何选购虚拟主机?
·中国国家顶级域名和国际域名有什么区别?
·企业建设网站域名可以使用哪些字?
·建设网站时企业如何准备建网站资料?
·DIV+CSS建立标准WEB网页的好处

最新发表

·Asp基础教程之IIS最优化配置
·网站知识:Asp基础教程之常用操作
·网站知识:Asp基础教程之实用开发小技巧
·实现ajax的另类方法
·让框架随屏幕分辨率不同而自动调整
·asp.net(c#)生成汉字/汉语词组拼音的方法
·asp.net(c#)生成汉字/汉语词组拼音缩写的方法
·使用extjs将div浮动并实现鼠标拖放
·ASP实现文件直接下载
·关于CSS hack的思考
·纯CSS Tooltips
·CSS中float引起层飘出上级层的解决方案,清除浮动的好方法
·用CSS样式实现显示隐藏层方案
·用CSS按比例缩放图片
·绝对路径与相对路径祥解
·让文本框textarea自动适应内容的高度
·纯CSS Tooltips
·网页制作学习:虚线表格的制作方法
·超强超靓网页日历代码,网页特效

Asp基础教程之组件的开发与使用

文章来源:网站建设知识 文章编辑:admin 添加时间:2009-3-3 13:29:39

Asp基础教程之组件的开发与使用 
--------------------------------------------------------------------------------

1. 组件的特点? 

l 优点: 
n 调用方便,节省代码 
n 安全性高 
n 支持事务处理,多组件联合 
n 运行速度快 
n 升级、修改组件不需修改页面,因此扩展性好 
l 缺点: 
n 开发及调试困难 

2. 如何使用VB开发? 

⑴.打开VB>>New Project>>ActiveX DLL 

⑵.修改项目名称为course 


⑶.修改类模块的名字为conn_db 


⑷.Project>> References,引用COM+ Service Type Library和Microsoft Active Server Pages Object Library。 

⑸.修改类代码如下: 

'建立数据库连接并输出数据库字段 
Dim Response As Response 
Dim Request As Request 
Dim Server As Server 
Dim Application As Application 
Dim Session As Session 

Private Sub Class_Initialize() 
Dim objContext As ObjectContext 
Set objContext = GetObjectContext() 
Set Response = objContext("Response") 
Set Request = objContext("Request") 
Set Server = objContext("Server") 
Set Application = objContext("Application") 
Set Session = objContext("Session") 
End Sub 

Sub conn_db() 
Set conn = CreateObject("adodb.connection") 
conn.open "course_dsn", "course_user", "course_password" 
Set rs = CreateObject("adodb.recordset") 
rs.open "select * from user_info", conn, 1, 1 

If rs.recordcount > 0 Then 
For i = 1 To rs.recordcount 
Response.write "<br>" & rs("user_name") & "<br>" 
If rs.EOF Then Exit For 
rs.movenext 
Next 
End If 
rs.Close 
Set rs = Nothing 
conn.Close 
Set conn = Nothing 
End Sub 

⑹.添加一新类cutstr 

⑺.修改类代码如下: 

'截取字符串 
Function cutstr(str, length) 
If Len(str) > length Then 
cutstr = Left(str, length) & "..." 
Else 
cutstr = str 
End If 
End Function 

⑻.File>>Save 

⑼.File>>make course.dll 

3. 注册组件:MTS和regsvr32.exe 

有两种方式注册组件:MTS和使用regsvr32.exe。MTS是值得推荐的,因为它具有下列优点: 
n 动态卸载平衡,提高组件和基于组件的应用程序的升级性。 
n 包含公布和提交事件和队列组件的能力,使得更容易与多个组件联合。 

要想使组件具有MTS的特性,必须对组件做少许改动。在NT和98下开发时,必须在项目中引用Microsoft Transaction Server Type Library,在Windows 2000下开发,必须引用COM+ Service Type Library。 

⑴.regsvr32注册: 

regsvr32.exe是system32下面的一个可执行文件,它将组件信息读入注册表,以便Asp调用。 
使用命令行进入组件dll文件所在的目录,执行“regsvr32 dll_file_name”即可。 


运行regedit,在HKEY_CLASSES_ROOT下就会找到course.conn_db项和course.cutstr项,表明组件注册成功。 


⑵.使用MTS注册: 

①.开始>>程序>>管理工具>>组件服务 

②.展开目录至如下状态: 


③.按照向导,下一步,直到如下对话框,点击“创建一个空的应用程序”: 


④.在接下来的对话框中,为应用程序起名为“course”,其他默认,直至完成 

⑤.展开course应用程序,右键,新建一个组件 


⑥.按照提示,继续,出现如下对话框时,选择“导入已被注册的组件” 


⑦.选择我们开发的组件,下一步,直至完成 


⑧.这时候,可以发现course应用程序下已经多了两个组件: 


4. 在Asp中调用组件 

asp_use_com.asp 
<% 
'asp调用com组件 
set cutstr_obj=server.createobject("course.cutstr") 
response.write cutstr_obj.cutstr("abcdefghijk",3)&"<br>" 
set cutstr_obj=nothing 

set conn_obj=server.createobject("course.conn_db") 
conn_obj.conn_db() 
set conn_obj=nothing 
%> 

效果: 
abc... 

ahyi 

tuth 

说明调用成功。 

5. 卸载组件 

⑴.使用regsvr32注册的组件,使用-u开关卸载: 


注意:先进入组件dll所在的目录,然后使用“regsvr32 –u dll_file_name”卸载;卸载后重启IIS即可。 

⑵.使用MTS注册的组件,先在“组件服务”中删除对应的应用程序,然后再执行步骤 ⑴ 以彻底卸载组件。 


6. Dll组件存放位置和权限设定 

⑴.我们只需要把编译生成的Dll文件拷贝出来即可,其他的文件不用做处理 
⑵.要把Dll放到Web站点之外,如system32目录里,防止被下载 
⑶.Dll的文件权设置为System读取,Internet用户遍历文件夹/运行文件 
⑷.Dll在IIS中去掉所有的权限,如读取,脚本自愿访问等 
经过上述处理,可以确保Dll文件的安全。 

7. 其他 

如何在组件中使用Asp的对象以方便的将Asp代码移植为COM组件? 

[ ]

首页 评论 打印 刷新 返回顶部 关闭
【相关文章】  【相关评论】
Asp基础教程之IIS最优化配置
网站知识:Asp基础教程之常用操作
网站知识:Asp基础教程之实用开发小技巧
ASP实现文件直接下载
超强超靓网页日历代码,网页特效