QQ登录

只需要一步,快速开始

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

Asp中调用VB编写的DLL

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-6 09:53 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
作者:   慈勤强
7 P9 j+ M/ Q& S" ?# t4 c% q5 S: ?Email : cqq1978@Gmail.com
7 F# J- t4 H% U4 m1 j( j0 t( q5 r描述: Asp自身提供的几大对象在有些时候并无法满足我们的需要,这时候就需要我们
; L! V6 M7 Y. J5 y1 C1 I: @      自己动手编写组件,然后在Asp中调用 0 o3 J, q, |5 m" P: {, d. |5 U
最后修改: 2004-10-02
8 u$ f2 {& l& I; K! ~3 `**/
: z0 {% D" b' E2 o7 M5 W<>    在用ASP做网站的时候,经常发现有些功能是Asp本身所无法实现的,就必须借助于
; `+ `4 `5 r; Q* `2 x7 O& T& f+ P
第三方的组件。 比如说发送Email,文件上传等等。
5 H' f6 V0 K. Z/ w% w+ d* A</P>  {, {) s. m+ V/ n3 x7 M4 I4 s
<>    今天就以VB为例,简单的制作一个我们自己的组件,然后在Asp中调用它。</P>* n( ]9 I  R. p6 t8 M
<>    首先,打开VB,在新建工程类型里面,我们选择ActiveX Dll,如果您的组件需要* z  N: m/ v3 J* A
# r7 Z7 V  h1 }% I% P5 p1 u
界面,也可以选择ActiveX控件。</P>! q3 f* x. ~6 u$ y& Y
<>    然后,系统默认生成一个类模块Class1,我们可以改成我们需要的名称,比如FirstClass。
( O: h2 G2 W% k: F9 V) P1 I; s; `! c: c3 W* }: t- a2 t3 p" R3 f
说明一下,我们在Asp中调用对象的时候,是这么写的:0 m/ e' k3 O! E5 |+ e4 Y% s
5 h7 H  l- u7 R% R8 K- D
    Set obj = Server.CreateObject("AdoDB.Connection")4 c' z8 |; S* M4 _( p5 P  q5 F& F5 v

9 g! C) X6 h5 z5 u    我们都知道,AdoDB是一个对象库,里面有好多个对象,而Connection是其中的一个对象。
' W' C6 Y& Y5 ~% W+ F) ?4 O4 U6 }) X* Y6 r7 ]" a* Q( t
    所以,我们在上面创建的类模块,其实就是具体的对象,与Connection的地位是一样的。5 h  Y! ?8 O9 K
</P>
. r' \( O7 {* [  @<>    下面,我们就可以给我们创建的对象FirstClass编写代码,实现我们的功能了。; w6 x6 d1 G& T5 r
- I/ p* N% {' ^" D" T" I* ^
    我们写个很简单的方法,就是返回一个字符串
: ]6 W5 N4 S, i8 V" A0 }</P>) k! q/ @; C4 a! ~- I5 L- \
<>    Public Function getVersion() as String( ~- [" M) @- U) T7 X3 C

7 s- j6 t& p6 N            getVersion = "我的第一个DLL,版本1.0"
6 D2 }6 ]7 k# G* k8 d1 R* J3 l% U
) q4 ^8 E  v1 M3 e' M    End Function</P>6 }8 u' w" s& S. C. q+ S/ G; s
<>    写好之后,我们就要确定类库的名字,就像上面的AdoDB一样。 我们在工程菜单,工程属性
4 `+ ?9 J" H5 F% k1 @! P- }/ n0 v/ I2 u
1 }/ y" v; @# m" p7 n    界面,可以看到一个工程名称,默认是”工程1“,这就是我们需要修改的地方,比如我们改成CqqLib
, e: Q6 g! `/ c& g& E. y5 l5 N& L</P># Q4 g# w6 l; W1 s$ O, R
<>    好了,生成相应的Dll, 这个时候系统就自动把这个组件注册到系统中了。 如果要用在其它
* j$ `( f5 ~* e; c6 J1 f3 ]+ {/ t) A4 u# w% Q) L: f
    的电脑上,需要先注册, 就是在命令行下输入 regsvr32 a.dll 就可以了。1 m1 B( f4 Q7 X0 s/ V) ~7 o- ?
</P>( P% o6 ?5 ^! K5 L( s
<>    下面,我们看看在Asp中怎样使用这个Dll,很简单:8 e+ L. |2 Q( K; d, ]$ I0 L7 X, L

$ C6 z. @6 R5 o( P  _    &lt;%& x2 y' \# b( }5 w: }# f
    Set obj = Server.CreateObject("CqqLib.FirstClass")
2 ~3 ~& N4 C1 w% z  Z    response.write obj.getVersion$ L+ V- c+ p: j
     %&gt;
3 t* P$ ~* k2 u& w8 n% S: d/ X/ z6 g/ Y) P, e' z5 ~0 r

. R& S& L, i8 |8 ~, g     就可以看到输出结果了,也就是 "我的第一个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

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

    使用道具 举报

    4#
    无效楼层,该帖已经被删除
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-7-18 06:14 , Processed in 0.435121 second(s), 68 queries .

    回顶部