Asp深度揭密(下)

2016-01-29 19:19 2 1 收藏

Asp深度揭密(下),Asp深度揭密(下)

【 tulaoshi.com - ASP 】

  四、Asp组件的开发与使用:

1.    组件的特点?

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

2.    如何使用VB开发?

⑴.打开VBNew ProjectActiveX DLL

⑵.修改项目名称为course



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


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

⑸.修改类代码如下:

from www.knowsky.com

'建立数据库连接并输出数据库字段
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

⑻.FileSave

⑼.Filemake 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...

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

延伸阅读
标签: ASP
  一.关于参数传递。假如表中有46条记录,然后我们在地址栏中敲入http.//localhost/display.asp?line=10&page=2(假设这是正确的路径)肯定浏览器将给我们显示第二页的十条记录。但是如果在地址栏中只敲入http.//localhost/display.asp,浏览器却给我们一个出错信息。如何解决呢?我们必须在读取这些参数时加一个判断,如果参数是空...
Windows7下配置添加ASP功能   1、控制面板-程序-打开或关闭Windows功能 2、Internet信息服务-万维网服务-应用程序开发功能 3、勾选ASP 和ASP.net选项 确定后安装完毕即可支持。 Windows7远程登入ubuntu12.04   以前看过一些资料说ubuntu默认是安装ssh的,而我是自己安装了一个ssh,并且安装之后,看到ssh...
标签: ASP
下列示例在默认网站应用程序 (W3SVC/1/ROOT) 上启用跟踪。请注意,只要设置了 AspEnableTracker 属性,AspAppServiceFlags 属性就发生改变: On Error Resume Next set providerObj = GetObject("winmgmts://MyMachine/root/MicrosoftIISv2") ' 获得对名为“默认网站”的 ASP 应用程序的引用 set IIsWebVirtualDirSe...
static_cast<>揭密 作者:Sam NG 译者:小刀人 原文链接:What static_cast<> is actually doing 本文讨论static_cast<> 和 reinterpret_cast<>。 介绍 大多程序员在学C++前都学过C,并且习惯于C风格(类型)转换...
标签: Web开发
为了提高网站首页的性能,首页凡是需要调用数据库显示数据的地方都会先试图从缓存中调用数据,如果缓存中没有可用数据再打开数据库取出记录集,为了让页面显示数据和数据库在一定时间内同步,我们把缓存的过期时间设置成30秒。 声明:缓存管理类出自于动网论坛7.0 注意:最好不要在缓存里直接缓存带状态的对象和MTA模式的对象,比如说...

经验教程

615

收藏

67

精华推荐

ASP_NET下使用MD5加密

ASP_NET下使用MD5加密

dqintijiao28

asp下替换非数字为空的正则

asp下替换非数字为空的正则

憨豆先生处对象

揭密“男科体检”详情

揭密“男科体检”详情

推荐末日

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