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

我的地盘我做主
该用户从未签到
 |
作者: 慈勤强. k. B5 R1 X/ u% U1 e( O7 o" |% n
Email : cqq1978@Gmail.com7 b" c' D3 ~# a# S4 |
描述: Asp自身提供的几大对象在有些时候并无法满足我们的需要,这时候就需要我们) ?$ ~. c M8 b# |
自己动手编写组件,然后在Asp中调用
; p. s4 W$ g2 e; q1 S3 B最后修改: 2004-10-02' W( E+ m) I' {& a# B& u( ^
**/
/ O( O/ |: S& }/ A1 }< > 在用ASP做网站的时候,经常发现有些功能是Asp本身所无法实现的,就必须借助于/ f) r- c" J. C2 A& e) W
4 u4 N3 _. q; Y9 ^第三方的组件。 比如说发送Email,文件上传等等。
+ \9 r& T4 p/ k9 m- ]7 i</P>
% x- J& _4 ^& y' Z% c& D% P< > 今天就以VB为例,简单的制作一个我们自己的组件,然后在Asp中调用它。</P>
3 _7 Z( q9 J5 Z; _8 a< > 首先,打开VB,在新建工程类型里面,我们选择ActiveX Dll,如果您的组件需要
) _+ F9 M3 j) Q8 e; E5 r8 Q6 F
9 L8 {0 m' w# q4 e/ r* R8 J* L界面,也可以选择ActiveX控件。</P>
" s. V5 W) X4 [2 Y7 @) I/ y< > 然后,系统默认生成一个类模块Class1,我们可以改成我们需要的名称,比如FirstClass。
8 n3 t: I7 ]+ @/ {2 h4 L: T
$ f, n' n; H* c: N4 t7 x说明一下,我们在Asp中调用对象的时候,是这么写的:9 V% l! U( \+ D1 e
1 W6 B' j% p; N: D; N) W Set obj = Server.CreateObject("AdoDB.Connection")
0 u }, B$ I8 k/ H2 u9 L& y* K. Q# q
我们都知道,AdoDB是一个对象库,里面有好多个对象,而Connection是其中的一个对象。! f* A$ j, _* k7 J5 M
. k" s7 r7 R, b( C( y* B 所以,我们在上面创建的类模块,其实就是具体的对象,与Connection的地位是一样的。
' Q; P+ g9 U! I, F1 c; F, d</P>/ ~: I( P. n, s* U/ j" G0 i. w
< > 下面,我们就可以给我们创建的对象FirstClass编写代码,实现我们的功能了。
2 v9 c4 F) P# o+ Y9 d
8 L* y8 w( k0 a. a+ M+ u9 o 我们写个很简单的方法,就是返回一个字符串& b. F g7 ]8 T6 \3 x1 v4 w4 `1 Z- C
</P>
9 ?1 b# k0 {- I) J8 y5 Y< > Public Function getVersion() as String
# D2 V6 `" v( J9 ?5 c1 l: y
, u7 w* k& }3 F getVersion = "我的第一个DLL,版本1.0"& C. x5 F' d$ z" r1 k
8 G- f! U1 m% n% G0 c4 n7 H9 b
End Function</P>4 B$ a2 l4 D, K2 }7 R! k) e
< > 写好之后,我们就要确定类库的名字,就像上面的AdoDB一样。 我们在工程菜单,工程属性
; f6 D' H* `% [+ K7 n4 X
# Y$ p* K8 I, B6 ]4 B 界面,可以看到一个工程名称,默认是”工程1“,这就是我们需要修改的地方,比如我们改成CqqLib
" w# K( m1 N. |# \2 z# W4 v</P>
, v2 M" w- [2 t: i5 S% r< > 好了,生成相应的Dll, 这个时候系统就自动把这个组件注册到系统中了。 如果要用在其它
4 v2 s8 p5 }" H8 Z/ v& j: Z+ G
/ X. H7 D9 K/ @/ ^0 U 的电脑上,需要先注册, 就是在命令行下输入 regsvr32 a.dll 就可以了。
3 M* C6 z6 O5 [& m! Y4 N; |- V# O</P>3 v& J. w+ V$ W* O) Q, }9 Z
< > 下面,我们看看在Asp中怎样使用这个Dll,很简单: j! Z3 ?% x6 h, H; n
# i& ^$ V3 q) q/ l( c <%. N9 P# K6 | J( P; ^ q
Set obj = Server.CreateObject("CqqLib.FirstClass"), e0 I/ {! l. ?' i( ]5 H# Y
response.write obj.getVersion8 s7 a" |. f0 p1 `$ u5 i+ Q8 u- e3 J
%>
) l2 F+ L3 _8 |' C8 K/ B; Z& |
' P3 ~8 A% T ?( _0 F: O" s5 P
% E$ m4 g% L8 {( K 就可以看到输出结果了,也就是 "我的第一个DLL,版本1.0"</P> |
zan
|