QQ登录

只需要一步,快速开始

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

Asp中调用VB编写的DLL

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-6 09:53 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
作者:   慈勤强$ w1 a# ^. \8 W! K
Email : cqq1978@Gmail.com
3 q5 U5 O' p. A/ l( {8 ^描述: Asp自身提供的几大对象在有些时候并无法满足我们的需要,这时候就需要我们8 `6 x( P0 d8 I- e: C' ]( y
      自己动手编写组件,然后在Asp中调用 & |! a- p; V9 f- `1 R
最后修改: 2004-10-025 {, S6 |, I+ B' q1 C, |# `
**/ / m3 W+ W% Y: n) E
<>    在用ASP做网站的时候,经常发现有些功能是Asp本身所无法实现的,就必须借助于
  ~9 e1 G( [& C3 Y$ L2 y! @1 p7 G, l
1 D1 b6 |2 L6 l4 i: K6 w第三方的组件。 比如说发送Email,文件上传等等。
. d  D8 p) w: B$ O2 A# Q</P>2 X% M0 v' d" l. [
<>    今天就以VB为例,简单的制作一个我们自己的组件,然后在Asp中调用它。</P>$ F, R1 x$ Q7 |9 x3 ]
<>    首先,打开VB,在新建工程类型里面,我们选择ActiveX Dll,如果您的组件需要
) i9 f- v% S8 a/ N8 X6 L- O  y( ]0 I
界面,也可以选择ActiveX控件。</P>, h3 P7 o5 h$ W
<>    然后,系统默认生成一个类模块Class1,我们可以改成我们需要的名称,比如FirstClass。8 h7 s2 Y- z( A4 n. n8 \+ K
. W% `& ?4 ^5 x, O
说明一下,我们在Asp中调用对象的时候,是这么写的:+ G" |+ _- d3 u2 U
3 L, I/ g4 b, y5 c
    Set obj = Server.CreateObject("AdoDB.Connection")
6 d6 U  z6 |& Y0 f" ~( U% D7 U) w; u$ r
    我们都知道,AdoDB是一个对象库,里面有好多个对象,而Connection是其中的一个对象。
: b. ?7 A+ G2 J0 a0 u0 Y/ E
- e! G1 c6 _( d( y/ @    所以,我们在上面创建的类模块,其实就是具体的对象,与Connection的地位是一样的。
* P4 V4 Z% a' v  n% P</P>
: j3 k9 q- B1 \4 z( ]+ @<>    下面,我们就可以给我们创建的对象FirstClass编写代码,实现我们的功能了。
$ I: r# `/ L; J" ]! H0 q" T" K- d" V/ r2 f
    我们写个很简单的方法,就是返回一个字符串
5 z# p, u4 P: A& R& x</P>, u0 Y7 x9 I% ]0 \2 ~5 K# o
<>    Public Function getVersion() as String
& I  e  h$ P5 o* D- U1 Q: s: h
; F( R5 `1 }% h) j- d/ P# r, }) x            getVersion = "我的第一个DLL,版本1.0"- C0 y, u* T0 P( ?& w5 [) c
$ \. X+ k, r6 w0 f  {: @
    End Function</P>9 {6 r' I& N) G  f5 c0 j
<>    写好之后,我们就要确定类库的名字,就像上面的AdoDB一样。 我们在工程菜单,工程属性: p( s; u2 a8 z; c. H9 {- G
2 e, C* F) Y* \
    界面,可以看到一个工程名称,默认是”工程1“,这就是我们需要修改的地方,比如我们改成CqqLib1 k4 {; j) `6 d2 W' c. v
</P>1 [" f% W8 L. L9 C- b$ T/ C; T
<>    好了,生成相应的Dll, 这个时候系统就自动把这个组件注册到系统中了。 如果要用在其它
" g1 O" w+ B/ ?7 z, Q: c# v7 b3 z0 ]1 [- l  I
    的电脑上,需要先注册, 就是在命令行下输入 regsvr32 a.dll 就可以了。
' n0 L, g4 E) C5 M</P>) L9 [* w+ `+ B. F
<>    下面,我们看看在Asp中怎样使用这个Dll,很简单:
0 f/ p7 \% R8 }, }
& D/ M4 X& F/ o! |    &lt;%
3 F/ L9 ]- Q# r6 C( l3 ?9 e    Set obj = Server.CreateObject("CqqLib.FirstClass")1 v" k$ H9 x! t# U' s1 B
    response.write obj.getVersion
6 F( F- y5 y$ b4 Z" x6 T1 W     %&gt;" f! }7 L, ^8 x6 y

0 I. K4 D3 A  X& L' j/ E, w) f# w5 ?0 M5 l7 X
     就可以看到输出结果了,也就是 "我的第一个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, 2026-4-11 00:30 , Processed in 0.908384 second(s), 61 queries .

    回顶部