- 在线时间
- 0 小时
- 最后登录
- 2007-9-23
- 注册时间
- 2004-9-10
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 9975 点
- 威望
- 7 点
- 阅读权限
- 150
- 积分
- 4048
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1893
- 主题
- 823
- 精华
- 2
- 分享
- 0
- 好友
- 0

我的地盘我做主
该用户从未签到
 |
作者: 慈勤强" @, R3 J* u' Y( [. u" w
Email : cqq1978@Gmail.com
9 U+ t7 ?5 b# g; I7 A6 `描述: Asp自身提供的几大对象在有些时候并无法满足我们的需要,这时候就需要我们
5 l. A! W/ U7 O8 y+ q; n/ t$ a9 N$ o 自己动手编写组件,然后在Asp中调用 $ B4 ~8 `/ o9 H9 T. c T
最后修改: 2004-10-02, {/ L7 t. y! i+ j! g- g
**/ 4 k& A; T$ D: {1 S
< > 在用ASP做网站的时候,经常发现有些功能是Asp本身所无法实现的,就必须借助于( M) Z3 o; T' @' p/ G: a
2 [1 I7 r/ F; r0 j2 W3 h
第三方的组件。 比如说发送Email,文件上传等等。
) Q& |) q2 _: m</P>
$ a( O7 J3 ~% P1 v" X; Z< > 今天就以VB为例,简单的制作一个我们自己的组件,然后在Asp中调用它。</P>( A& Q/ W2 a! M A$ e7 Y( q
< > 首先,打开VB,在新建工程类型里面,我们选择ActiveX Dll,如果您的组件需要; N ?3 s1 }( k
l( ^- t% p% a8 T! ~- ]# \" p界面,也可以选择ActiveX控件。</P>
2 H% Q. |" A: l( X% E1 |3 V Z% G< > 然后,系统默认生成一个类模块Class1,我们可以改成我们需要的名称,比如FirstClass。
0 {8 {/ z3 [/ s! j, @! g. ]
" A6 S8 a/ e: `0 d说明一下,我们在Asp中调用对象的时候,是这么写的:
2 z! `2 v" h# M& P! [/ `) u, I4 l/ Z! Y7 j Q) {+ r6 M
Set obj = Server.CreateObject("AdoDB.Connection")" s6 r% d2 T5 Y; p3 F. ]
$ o# u6 S% y' O( d7 d4 @ 我们都知道,AdoDB是一个对象库,里面有好多个对象,而Connection是其中的一个对象。, d! H" E5 x% J
+ |% }/ o6 ]' P
所以,我们在上面创建的类模块,其实就是具体的对象,与Connection的地位是一样的。* D' ~! H+ M8 F2 K3 t" n1 c' u& k
</P>
: s3 i$ p4 q3 \" t2 B< > 下面,我们就可以给我们创建的对象FirstClass编写代码,实现我们的功能了。
J8 C/ h/ `/ w- {7 F* N' K. J( o2 t$ u, q, G' D7 W
我们写个很简单的方法,就是返回一个字符串2 b" ^& C$ m" F) N% t3 M* _3 L
</P>7 E% y+ M/ S- Y8 n& E2 U
< > Public Function getVersion() as String9 r, F. n; {/ q u! f% N9 `
a: G) ^1 }0 m E% ?% R
getVersion = "我的第一个DLL,版本1.0"
/ u+ g0 |4 P9 r0 m1 ~3 M! w
0 G! `' B' W5 b1 h: ?( B End Function</P>2 t/ m3 U1 T- R# T; @5 H0 C2 K% l
< > 写好之后,我们就要确定类库的名字,就像上面的AdoDB一样。 我们在工程菜单,工程属性; o$ A. l( u/ b+ }9 u
: R) J" f1 u% }: N7 u
界面,可以看到一个工程名称,默认是”工程1“,这就是我们需要修改的地方,比如我们改成CqqLib) N3 ?4 \$ n U8 i6 G
</P>
" L9 x p/ x0 r+ T< > 好了,生成相应的Dll, 这个时候系统就自动把这个组件注册到系统中了。 如果要用在其它
& U0 s& G% U: A, `7 ~( x
: l+ ^! A" ?) P# N4 G 的电脑上,需要先注册, 就是在命令行下输入 regsvr32 a.dll 就可以了。
) a& O H+ i, v% T$ l- h" @$ `</P>
' {# _3 ?+ J) }. B5 h+ A< > 下面,我们看看在Asp中怎样使用这个Dll,很简单:9 E. y1 c8 A9 ]
. ?0 z! S. [# o# y, |7 D7 I <%5 ]; d! }! X' u0 w' D
Set obj = Server.CreateObject("CqqLib.FirstClass")& f- K/ I% E6 e
response.write obj.getVersion+ M6 @/ I c7 O- o$ Q& }
%>
/ \( w6 C7 o) I8 N# f" \2 b% e1 \3 A# B
! Z% u" e2 F, P9 W( }" b
就可以看到输出结果了,也就是 "我的第一个DLL,版本1.0"</P> |
zan
|