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

我的地盘我做主
该用户从未签到
 |
作者: 慈勤强# S7 v- m- {7 S# k* f
Email : cqq1978@Gmail.com& S ] G: @5 `9 U* E* a% q
描述: Asp自身提供的几大对象在有些时候并无法满足我们的需要,这时候就需要我们- z; A5 H, E" t* j1 k( s+ @
自己动手编写组件,然后在Asp中调用
: I7 Y3 R" J4 }# K! g最后修改: 2004-10-02
* K0 w( m7 C! r0 W- q) a7 T**/
& k$ E7 h0 f( \' }< > 在用ASP做网站的时候,经常发现有些功能是Asp本身所无法实现的,就必须借助于, t! [% D; `- S/ U' i" J0 W
: o0 t, M! y) w; Y6 O! v. C. m) F, M第三方的组件。 比如说发送Email,文件上传等等。# Z, c+ ~) ^: `* ~2 E, G( P$ f8 d# Y
</P>
+ }0 l+ o' _( O8 b" @( J* j< > 今天就以VB为例,简单的制作一个我们自己的组件,然后在Asp中调用它。</P>1 N1 z+ Q/ f1 Z. H! \7 i
< > 首先,打开VB,在新建工程类型里面,我们选择ActiveX Dll,如果您的组件需要& g* }! Z1 \ \# h) p* J
8 Y$ p1 I6 O( n0 N8 d
界面,也可以选择ActiveX控件。</P>
8 N5 p* m; T) c' q4 p< > 然后,系统默认生成一个类模块Class1,我们可以改成我们需要的名称,比如FirstClass。
. x+ T( f" |7 G [6 N- D2 I
[) B9 l+ n8 [9 `) A" H说明一下,我们在Asp中调用对象的时候,是这么写的:
. M4 p% }. u7 R( }
, p0 v: S4 r' n/ B Set obj = Server.CreateObject("AdoDB.Connection")) e8 M# `% {" v! c
4 x4 ]3 \) R5 s5 C3 k4 H3 W 我们都知道,AdoDB是一个对象库,里面有好多个对象,而Connection是其中的一个对象。
; n. Q' K& Y9 I2 U0 M& @( J, I; R* J+ H/ ?+ q8 e0 G; i4 Z
所以,我们在上面创建的类模块,其实就是具体的对象,与Connection的地位是一样的。4 ~9 h3 l' A0 C- _' o9 \
</P>! X4 p- U0 s5 n% q
< > 下面,我们就可以给我们创建的对象FirstClass编写代码,实现我们的功能了。 o& e" v5 P, K7 C
7 _) A& P" d2 b) ~% u
我们写个很简单的方法,就是返回一个字符串
* C+ o& e( v7 D1 ~; b</P>
1 r1 b9 }+ E* [/ M5 T< > Public Function getVersion() as String
: J8 Y3 X" E5 l3 k9 i3 H# q: N
$ n" O# u' }2 s2 H; _ getVersion = "我的第一个DLL,版本1.0"4 f) m; q& O8 `8 f0 [
, Q+ ^) D- j; }& X" O0 i0 n& I End Function</P>
7 x- L% I& O0 A4 s% {< > 写好之后,我们就要确定类库的名字,就像上面的AdoDB一样。 我们在工程菜单,工程属性
. C' ?" R) G8 P7 u8 m
8 i/ n+ j8 G; U: T8 \1 X 界面,可以看到一个工程名称,默认是”工程1“,这就是我们需要修改的地方,比如我们改成CqqLib9 S |4 `4 c! `( \
</P>3 Q6 c! S+ \" K
< > 好了,生成相应的Dll, 这个时候系统就自动把这个组件注册到系统中了。 如果要用在其它
' M4 F6 z9 E: R1 Z0 ^- x: ~5 l& l& S ]& s9 [- i8 R* s
的电脑上,需要先注册, 就是在命令行下输入 regsvr32 a.dll 就可以了。 d& b) G( H2 F# j& z. A' a }
</P>
6 }& u1 Y( G; p% G2 h* v< > 下面,我们看看在Asp中怎样使用这个Dll,很简单:3 O2 m' s5 a+ y6 ]9 z# A
' e2 R0 U' w. ~# t8 h <%5 L" G8 `2 K8 K+ M7 g! _
Set obj = Server.CreateObject("CqqLib.FirstClass")
2 \7 ?; l4 T2 ?# e( `) r M response.write obj.getVersion
% c, d# G- e5 w3 t5 ^ %>
A$ C0 U4 D- Z$ }- u! G5 @4 \3 n; x1 @
6 [+ e% z6 P: e8 X
就可以看到输出结果了,也就是 "我的第一个DLL,版本1.0"</P> |
zan
|