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

我的地盘我做主
该用户从未签到
 |
作者: 慈勤强& u4 s: Z' P. i- b
Email : cqq1978@Gmail.com
9 e7 c% l/ D, Q0 U7 t描述: Asp自身提供的几大对象在有些时候并无法满足我们的需要,这时候就需要我们( @ R+ }3 Y# V
自己动手编写组件,然后在Asp中调用 q% \, _0 t% }" \
最后修改: 2004-10-022 Y B' r7 N/ X. _0 T0 O
**/
& c4 Q2 T1 r6 D< > 在用ASP做网站的时候,经常发现有些功能是Asp本身所无法实现的,就必须借助于
# @4 y; e9 S0 ^; ?8 o; g& F/ X( z) ?5 c1 H6 F
第三方的组件。 比如说发送Email,文件上传等等。- c1 \" J: Q% \, }
</P>
- v$ M& e s3 ]) S' \/ o' X0 Z< > 今天就以VB为例,简单的制作一个我们自己的组件,然后在Asp中调用它。</P>3 q0 @% \! z5 G2 L1 N. }
< > 首先,打开VB,在新建工程类型里面,我们选择ActiveX Dll,如果您的组件需要) ?5 b- }- r6 F- c9 k8 V
0 e4 f1 t1 `7 H8 d$ v; t界面,也可以选择ActiveX控件。</P>0 Y' H" s }3 e+ l8 c
< > 然后,系统默认生成一个类模块Class1,我们可以改成我们需要的名称,比如FirstClass。
# i! w9 E! i: K2 d/ ~8 z K; E7 G# \* P+ T$ G0 t, ^: E
说明一下,我们在Asp中调用对象的时候,是这么写的:
- V( ~. `4 m6 s; X5 ^( E7 I: a8 L( n( k! K" Y
Set obj = Server.CreateObject("AdoDB.Connection")
% t+ T7 @5 }( S- t: B, G& G
, I- E; X; m3 {# z. e* |. s 我们都知道,AdoDB是一个对象库,里面有好多个对象,而Connection是其中的一个对象。+ I5 b9 Y7 {5 N: R" w8 {" S% O
3 ?, K5 X& |3 |7 F) T% T$ P$ w 所以,我们在上面创建的类模块,其实就是具体的对象,与Connection的地位是一样的。( Q; Z1 N# v- u
</P>3 `. l" f; i2 p* V
< > 下面,我们就可以给我们创建的对象FirstClass编写代码,实现我们的功能了。
1 {* t6 O, |, v# y$ @, O( q4 _/ }
3 H9 {) ?- m4 q 我们写个很简单的方法,就是返回一个字符串3 y- q) a/ ?9 s1 a& l- C2 Z
</P>2 D h7 K: M C9 ?4 e& @6 _7 k
< > Public Function getVersion() as String
/ @3 n. G" f- d! B' h% v" A+ |5 L* I/ n4 M
getVersion = "我的第一个DLL,版本1.0"
# P" E! q+ a. V$ C, u- |
6 E- F5 m5 u: O3 b End Function</P>
, [- U5 ~% W! t< > 写好之后,我们就要确定类库的名字,就像上面的AdoDB一样。 我们在工程菜单,工程属性9 C! w4 o7 @' }# J
_' K* R1 |' S! b' M- `
界面,可以看到一个工程名称,默认是”工程1“,这就是我们需要修改的地方,比如我们改成CqqLib) d: A0 ~- K, E! b) h
</P> K. I! x- K) ?
< > 好了,生成相应的Dll, 这个时候系统就自动把这个组件注册到系统中了。 如果要用在其它8 h2 i! B Y5 Z+ ^
: q9 f u5 C8 L# D* s
的电脑上,需要先注册, 就是在命令行下输入 regsvr32 a.dll 就可以了。
7 M) P; D6 W7 z( f* S" ~) h7 P</P>/ M& b& K' i4 N1 \
< > 下面,我们看看在Asp中怎样使用这个Dll,很简单:( i# E3 @- G/ Q q, l; ?
3 G' I+ I& Q* l' }# ` <%
6 I( C9 I% @9 C7 } Set obj = Server.CreateObject("CqqLib.FirstClass")0 u3 p) R' g: L- f& V* k* p% g
response.write obj.getVersion5 j: ?4 i# M* q
%>! Q+ J% i: [0 I* O; D7 r
+ L5 K% p# A9 S3 G3 O, B
4 t2 s3 k; w3 \. ^' M3 i 就可以看到输出结果了,也就是 "我的第一个DLL,版本1.0"</P> |
zan
|