QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 10474|回复: 2
打印 上一主题 下一主题

Asp中调用VB编写的DLL

[复制链接]
字体大小: 正常 放大
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-6 09:53 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
作者:   慈勤强
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    &lt;%
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' ^
     %&gt;
4 m1 b2 z, Z" c; p& g6 I- W& T5 R& L
. y8 i' M: B% M
     就可以看到输出结果了,也就是 "我的第一个DLL,版本1.0"</P>
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

30

主题

3

听众

2324

积分

升级  10.8%

  • TA的每日心情
    奋斗
    2023-6-21 14:13
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    自我介绍
    200 字节以内&amp;lt;br /&amp;gt;
    不支持自定义 Discuz! 代码

    邮箱绑定达人 新人进步奖 元老勋章 原创写作奖

    回复

    使用道具 举报

    absdswor        
    头像被屏蔽

    0

    主题

    5

    听众

    218

    积分

    升级  59%

  • TA的每日心情
    开心
    2013-11-28 06:02
  • 签到天数: 34 天

    [LV.5]常住居民I

    自我介绍
    斌晗溪言星
    提示: 作者被禁止或删除 内容自动屏蔽
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-7-28 20:57 , Processed in 1.612399 second(s), 61 queries .

    回顶部