QQ登录

只需要一步,快速开始

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

Asp中调用VB编写的DLL

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-6 09:53 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
作者:   慈勤强
! {3 H# V# ^( {7 O0 AEmail : cqq1978@Gmail.com
  {+ _+ L- s0 S  U2 Q描述: Asp自身提供的几大对象在有些时候并无法满足我们的需要,这时候就需要我们
# `8 Z4 X* d. W0 {2 C+ v      自己动手编写组件,然后在Asp中调用
8 {. F, I* _8 Q" l0 c最后修改: 2004-10-02
1 W- |! G2 P' Y5 C3 R**/
6 Q$ s' w9 X9 t; K<>    在用ASP做网站的时候,经常发现有些功能是Asp本身所无法实现的,就必须借助于
2 t. d% l& V, R8 ?
) J5 F- V+ Y. [2 v% A7 ]  H第三方的组件。 比如说发送Email,文件上传等等。
' M% c+ z$ J+ a9 F" O' g2 J</P>
% v8 C/ T) Y$ z' S. I<>    今天就以VB为例,简单的制作一个我们自己的组件,然后在Asp中调用它。</P>4 `4 s0 W) ?* i9 v. p& }  P% V1 ?6 X
<>    首先,打开VB,在新建工程类型里面,我们选择ActiveX Dll,如果您的组件需要
, p9 I8 x& ?- a( M9 ^
5 e4 L, L' d, j1 `4 p3 {界面,也可以选择ActiveX控件。</P>& R9 I8 p( @% q$ Z: \; x4 g8 I
<>    然后,系统默认生成一个类模块Class1,我们可以改成我们需要的名称,比如FirstClass。
$ z  O- ]9 K" z: ~4 K3 ^
; J$ M* J9 C3 `7 ?说明一下,我们在Asp中调用对象的时候,是这么写的:
7 A+ x5 f* r8 e2 k, U+ ?) n+ V8 ]- C* j* t. T4 E
    Set obj = Server.CreateObject("AdoDB.Connection")
2 H2 F) N% x/ n  ]! [& I+ z& q" p/ ^
& n4 a8 I& o7 k" v! A7 E    我们都知道,AdoDB是一个对象库,里面有好多个对象,而Connection是其中的一个对象。
* @4 a, f. f! L# Q: ~2 D" a2 b. S0 H6 k& z4 U
    所以,我们在上面创建的类模块,其实就是具体的对象,与Connection的地位是一样的。
8 C- ^8 J1 Y2 h! P( R6 Z. p3 @</P>/ W! G4 }  ]8 A7 |+ O4 a# @
<>    下面,我们就可以给我们创建的对象FirstClass编写代码,实现我们的功能了。  H- X5 N6 ?+ i. S6 @* J# ^$ Z

4 @( E9 f6 ^0 e1 f5 d% @  h    我们写个很简单的方法,就是返回一个字符串) t1 P$ E! ?! r" \3 \5 e: x% s
</P>
/ E  L  R7 h, z4 Q/ T/ k, p<>    Public Function getVersion() as String0 J  N: d1 }1 t# C7 X& m2 _

' T" V3 e, A' L- D* a            getVersion = "我的第一个DLL,版本1.0"
7 ]- n0 _, W9 y, J( R, V5 A' b# d
) [/ E5 [  L) [; k) V    End Function</P>
6 j" i- A, m, T! {<>    写好之后,我们就要确定类库的名字,就像上面的AdoDB一样。 我们在工程菜单,工程属性
; m% j- ~. {6 P: d8 s1 S
- }- e  h2 ~$ l4 H    界面,可以看到一个工程名称,默认是”工程1“,这就是我们需要修改的地方,比如我们改成CqqLib
+ Y$ @; K' L2 k9 T</P>2 p4 w6 }: C4 W+ B9 Z% j
<>    好了,生成相应的Dll, 这个时候系统就自动把这个组件注册到系统中了。 如果要用在其它
  K& w' y# O  ~: E" k7 m7 o" G
' K3 Z5 O( V2 k/ q    的电脑上,需要先注册, 就是在命令行下输入 regsvr32 a.dll 就可以了。
' m% B: b& M2 p4 Y</P>
5 I1 @. e) R% t# m  |% y! {- S& o8 A' e<>    下面,我们看看在Asp中怎样使用这个Dll,很简单:
2 m% V( B, n. M
. h% i. J& S& A5 R1 q( Y- W    &lt;%
/ @! e9 K2 v& u+ Z3 ]    Set obj = Server.CreateObject("CqqLib.FirstClass")$ N9 t; A* F2 r
    response.write obj.getVersion$ r* u& v; k, }: D# T" F
     %&gt;: l  L8 r/ k2 Z
" \1 `. ^/ I+ e; h! B6 Q1 D( w

/ d% o' N3 B+ p1 {. \     就可以看到输出结果了,也就是 "我的第一个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-11-7 11:28 , Processed in 0.552437 second(s), 61 queries .

    回顶部