QQ登录

只需要一步,快速开始

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

Asp中调用VB编写的DLL

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-6 09:53 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
作者:   慈勤强. 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    &lt;%. 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
     %&gt;
) 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
转播转播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-4-14 11:23 , Processed in 0.465354 second(s), 68 queries .

    回顶部