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

我的地盘我做主
该用户从未签到
 |
作者: 慈勤强
9 T( [& ~# z* d3 d0 @Email : cqq1978@Gmail.com
6 J) i' n: U2 V% g! `描述: Asp自身提供的几大对象在有些时候并无法满足我们的需要,这时候就需要我们
. d! e* I4 W0 N& t: |1 E# Z 自己动手编写组件,然后在Asp中调用 + X* e9 i2 v+ b/ V
最后修改: 2004-10-02; ~7 z& {% F4 g0 B6 c7 f/ K
**/ 5 }9 D, z. t( Y, d
< > 在用ASP做网站的时候,经常发现有些功能是Asp本身所无法实现的,就必须借助于
7 F0 D6 e7 }8 I
! x" M/ N" j) s8 H( }第三方的组件。 比如说发送Email,文件上传等等。
# z! }4 n4 E2 \8 d</P>
6 c j( F; e; p8 K! O$ n$ U, o4 ?< > 今天就以VB为例,简单的制作一个我们自己的组件,然后在Asp中调用它。</P>
5 W. B, D5 _$ }& M< > 首先,打开VB,在新建工程类型里面,我们选择ActiveX Dll,如果您的组件需要
" o$ w: D* ~+ y9 }7 F! J( i# J* L0 Y/ ^* G
界面,也可以选择ActiveX控件。</P>
% H. j& [- W- n1 }/ o< > 然后,系统默认生成一个类模块Class1,我们可以改成我们需要的名称,比如FirstClass。9 n O/ T3 ^: v! S+ d5 h
( L% @# U$ w: \+ b
说明一下,我们在Asp中调用对象的时候,是这么写的:
' Z8 B$ E u; y% R6 v5 E C2 h8 C0 q3 b( E5 c5 l" ~
Set obj = Server.CreateObject("AdoDB.Connection"). a* o: F2 v& M$ O5 b. e2 x% O
- r, n. R( k$ P& t/ w 我们都知道,AdoDB是一个对象库,里面有好多个对象,而Connection是其中的一个对象。
4 C" |5 |- n+ K9 N
7 m; b9 F" z- N5 ~# j3 j 所以,我们在上面创建的类模块,其实就是具体的对象,与Connection的地位是一样的。0 z6 w$ B- ?% f( j
</P>
( c7 k9 r8 t2 Z0 i+ f, @< > 下面,我们就可以给我们创建的对象FirstClass编写代码,实现我们的功能了。$ |3 X( T* }) ^" ^
' F7 v, H. D0 K9 _9 [4 C
我们写个很简单的方法,就是返回一个字符串
$ q# T6 Z3 a% f</P>2 U) O; |. g* _: p, @9 d
< > Public Function getVersion() as String" C! z/ B% v. z9 A
+ I2 q5 K; N" Z1 n
getVersion = "我的第一个DLL,版本1.0"" g: }! M+ k& T3 E: [! F) V
) _7 a! g7 x: i5 I/ z
End Function</P>
2 k: \, X$ T$ S- l< > 写好之后,我们就要确定类库的名字,就像上面的AdoDB一样。 我们在工程菜单,工程属性) A8 a+ K1 s, w9 j; F, \
9 M* |/ w' i" c8 i# z0 S8 g
界面,可以看到一个工程名称,默认是”工程1“,这就是我们需要修改的地方,比如我们改成CqqLib% F$ d7 Q" q- K H! u5 n
</P>4 R7 C6 c& |; \" b3 q: ~* L8 I
< > 好了,生成相应的Dll, 这个时候系统就自动把这个组件注册到系统中了。 如果要用在其它
: `2 m) Y0 w$ T5 v9 x0 m" ]3 I9 ~0 A# d4 Q) w
的电脑上,需要先注册, 就是在命令行下输入 regsvr32 a.dll 就可以了。
* {% a* k8 S! b( y</P>3 J" P3 _; U& }" a- Z2 C
< > 下面,我们看看在Asp中怎样使用这个Dll,很简单:2 L5 U g& O5 |3 q6 C1 ]5 O
! y: x0 a' r- d# f5 I <%
8 J: g' ~% [' I. k4 n/ h' c+ a Set obj = Server.CreateObject("CqqLib.FirstClass")
. S/ x! g4 h2 n$ a response.write obj.getVersion' r; e8 z9 C. |$ h+ D' ^
%>
4 m1 b2 z, Z" c; p& g6 I- W& T5 R& L
. y8 i' M: B% M
就可以看到输出结果了,也就是 "我的第一个DLL,版本1.0"</P> |
zan
|