- 在线时间
- 0 小时
- 最后登录
- 2007-9-23
- 注册时间
- 2004-9-10
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 9975 点
- 威望
- 7 点
- 阅读权限
- 150
- 积分
- 4048
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1893
- 主题
- 823
- 精华
- 2
- 分享
- 0
- 好友
- 0
我的地盘我做主
该用户从未签到
|
作者: 慈勤强, J/ r# U+ m0 ~. N) k! C
Email : cqq1978@Gmail.com
: y/ m; a Q0 X4 ?# g; P5 e描述: Asp自身提供的几大对象在有些时候并无法满足我们的需要,这时候就需要我们
L. k% C. u2 |+ s& G7 C 自己动手编写组件,然后在Asp中调用 / @# Z% [+ \2 [6 w; w
最后修改: 2004-10-022 c8 U* [: a1 L7 o
**/ - j( s) A% B) g+ e/ k0 D& e, u
<> 在用ASP做网站的时候,经常发现有些功能是Asp本身所无法实现的,就必须借助于! E+ r1 E( _- e j! H2 E
- m- P* R+ K' I# P第三方的组件。 比如说发送Email,文件上传等等。& d( W3 }9 `: }" B
</P>
- O" \" `# x& z9 v, M3 T<> 今天就以VB为例,简单的制作一个我们自己的组件,然后在Asp中调用它。</P>
" _ G. ~( j4 }$ w) B* @, C( b+ |<> 首先,打开VB,在新建工程类型里面,我们选择ActiveX Dll,如果您的组件需要
6 S% p. ~' Q X- m2 z* ?) E: k2 v9 H8 a) s1 \* n& l
界面,也可以选择ActiveX控件。</P>, I; a7 ~7 V3 ~% m0 b7 v9 h
<> 然后,系统默认生成一个类模块Class1,我们可以改成我们需要的名称,比如FirstClass。
# ~3 Y0 t6 H, _3 W
1 u1 d8 h. L. a% ]* M( n+ I! D: q说明一下,我们在Asp中调用对象的时候,是这么写的:
) z- Z2 a$ g' z5 K1 ~" h; W( s& e/ k r3 W0 S9 H. Z
Set obj = Server.CreateObject("AdoDB.Connection")
, P$ c4 ? T# J5 ]
. @" b: O! `# f2 k 我们都知道,AdoDB是一个对象库,里面有好多个对象,而Connection是其中的一个对象。# E$ K7 G: u4 ^) ^3 a2 M" l, B: E
2 ]% g: J4 M8 } 所以,我们在上面创建的类模块,其实就是具体的对象,与Connection的地位是一样的。* O# S4 J) Y# s! P* s( z" d7 c3 k
</P>
9 R' B) E' I+ M: J& C<> 下面,我们就可以给我们创建的对象FirstClass编写代码,实现我们的功能了。5 {( ]& J. C; e# Q2 T/ Q
1 d2 A7 ]$ f3 g, P3 r7 B4 x/ q
我们写个很简单的方法,就是返回一个字符串+ v% O0 b! l1 @6 u
</P>8 e/ |' Y* E) q3 N0 [7 U
<> Public Function getVersion() as String* G# h7 B4 s: l+ m
" S ~: |6 E4 R7 @" c- w D; W
getVersion = "我的第一个DLL,版本1.0"
! l3 C! G; n- N! E- h# g6 B( {. R; z# V4 L. E' t; \( o' S9 U; p0 u
End Function</P>' N" P! G0 L) g1 N
<> 写好之后,我们就要确定类库的名字,就像上面的AdoDB一样。 我们在工程菜单,工程属性) Y2 X) t- v h/ B9 `+ v" j
. D" o& _! E G& D( O
界面,可以看到一个工程名称,默认是”工程1“,这就是我们需要修改的地方,比如我们改成CqqLib
1 d( G& _' b4 m& K0 L* z* \</P>
! C* m% H. ~; e6 L<> 好了,生成相应的Dll, 这个时候系统就自动把这个组件注册到系统中了。 如果要用在其它
- V3 f. A& U+ Z- O: K2 e) P. y+ F7 N* m
的电脑上,需要先注册, 就是在命令行下输入 regsvr32 a.dll 就可以了。
: O) g! j7 Y$ [" a4 G) | S</P>
, r0 e% P5 d6 S9 A0 M' b<> 下面,我们看看在Asp中怎样使用这个Dll,很简单:
3 U. h( ^, F' M) D7 l! ]
$ S7 Z( Z1 }8 P# d <%+ Z8 `5 B- u- ~' w2 c4 f( [$ m
Set obj = Server.CreateObject("CqqLib.FirstClass")1 c" Z7 |# h+ {3 m
response.write obj.getVersion
+ G/ K o/ w0 D H# M/ i5 G- [ %>4 [& A6 y$ u0 V
/ G5 V% ]" |. \, ^% E6 _5 P( j' a. h& H0 w5 W) f; v) I- u% m
就可以看到输出结果了,也就是 "我的第一个DLL,版本1.0"</P> |
zan
|