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

我的地盘我做主
该用户从未签到
 |
作者: 慈勤强5 O) `- n4 V5 i" C n; F2 N
Email : cqq1978@Gmail.com
- h3 l) Y" q r# s5 t描述: Asp自身提供的几大对象在有些时候并无法满足我们的需要,这时候就需要我们
8 }% l1 ]5 a( ~( P 自己动手编写组件,然后在Asp中调用 + d. V! b) }! P6 u
最后修改: 2004-10-02 L. ?+ S0 F: W! M
**/ 9 ~" p$ k- k2 A3 L* }/ M* c
< > 在用ASP做网站的时候,经常发现有些功能是Asp本身所无法实现的,就必须借助于# y2 f* e4 y% }# D* T8 c; q
9 w- p1 B" \0 T7 c, M! x' a" p! z第三方的组件。 比如说发送Email,文件上传等等。1 X8 S# K# a4 f, R! _) E0 M% [, ~
</P>7 f/ n7 W2 e* c, k
< > 今天就以VB为例,简单的制作一个我们自己的组件,然后在Asp中调用它。</P>8 [, U6 E: R$ s! P' `1 ^& C% i
< > 首先,打开VB,在新建工程类型里面,我们选择ActiveX Dll,如果您的组件需要
3 Y( v( c/ z$ B+ N2 P" ?. w0 g# M3 I( S6 b7 f2 O1 V% ~
界面,也可以选择ActiveX控件。</P>8 a/ j. J1 q# O+ W) K3 K( m Z
< > 然后,系统默认生成一个类模块Class1,我们可以改成我们需要的名称,比如FirstClass。% e( M5 N! w6 ~% q7 P
+ H8 p T+ Y Q% a5 f" x说明一下,我们在Asp中调用对象的时候,是这么写的:0 t& m. S, o, y( f9 H
' v5 ?+ n. w1 U9 z, ]' D$ }# U7 Z
Set obj = Server.CreateObject("AdoDB.Connection"): @6 ^* f! S) f+ P% i6 R$ {) o1 I0 [
- _( W8 Z3 c0 ?+ } s$ c' w. K( r 我们都知道,AdoDB是一个对象库,里面有好多个对象,而Connection是其中的一个对象。6 S* W3 F4 q+ }+ T1 J9 T
) i3 A* F' j e; k8 L" Q; H 所以,我们在上面创建的类模块,其实就是具体的对象,与Connection的地位是一样的。9 l7 ?# Z2 S, V- W5 \( K
</P>
/ ]/ c7 s/ N& |+ `9 [< > 下面,我们就可以给我们创建的对象FirstClass编写代码,实现我们的功能了。
: |5 e$ G& ] i: _% y7 F0 I5 n$ T; K- e* |8 ?
我们写个很简单的方法,就是返回一个字符串. f' n g5 u4 m! Y" K, C& m7 `: |
</P>+ ^, h G2 x% j1 e
< > Public Function getVersion() as String# _* g1 o% ~* c) g% Y+ Q1 p
* j. T/ L& f9 s0 p z! B+ g getVersion = "我的第一个DLL,版本1.0"
' `$ |: R6 c& m( }
, k/ U; u; A6 d8 R) D End Function</P>* ~) |$ j6 ?; O1 E s9 k, n
< > 写好之后,我们就要确定类库的名字,就像上面的AdoDB一样。 我们在工程菜单,工程属性
: F, ^# \3 F& V; ~+ v
7 s5 M5 F" T4 g. g: u! p! _6 L 界面,可以看到一个工程名称,默认是”工程1“,这就是我们需要修改的地方,比如我们改成CqqLib; S4 A: z$ n5 f' F8 e& B
</P>/ r5 N& A9 t8 o+ x- a/ B' l
< > 好了,生成相应的Dll, 这个时候系统就自动把这个组件注册到系统中了。 如果要用在其它
6 L4 D& W2 O2 X0 M( O+ q% X
) E7 h; o' I+ ` 的电脑上,需要先注册, 就是在命令行下输入 regsvr32 a.dll 就可以了。$ B1 F6 h1 t% D, G) }+ _
</P>& b8 @% Z) u; Z
< > 下面,我们看看在Asp中怎样使用这个Dll,很简单:
4 `0 R2 J, t0 J2 e2 `7 [ Z: e) v5 u/ ~9 G0 M0 E* x i7 L L8 D8 `
<%
~8 u% N. b+ j$ y. r* c5 p Set obj = Server.CreateObject("CqqLib.FirstClass")' c W" b" z% Q3 E+ P3 r' L
response.write obj.getVersion
V) a" c3 E& ~ %>7 m1 f: C8 L3 K. O0 [1 K5 K% ~
& o* E1 x, g3 I6 {1 s" D8 h T( V: U( w
就可以看到输出结果了,也就是 "我的第一个DLL,版本1.0"</P> |
zan
|