(完整版)Vb写dll基础
- 格式:docx
- 大小:345.90 KB
- 文档页数:9
编写一个简单的 DLL Visual Basic 编写 DLL
打开VB6.0,新建工程 选择ActiveX DLL
修改工程名,工程名将决定生成的 DLL的名称,这里顺便把自动生成的类的名称也修改
工程-test
冒區||匚I
在类中添加一个方法(sub,或function )来测试这个 DLL
生成一个DLL 文件旧漏瑁旧视圏凹工闵迴梧式◎ 謂试里堪fj⑻曲(U)囹表①工冒
^<1程㈣ Ctrl + N
£打开工程◎“, Ctrl+O
盍加I程(QU 移瞼工程国
Q就工程辿 工程另存為㈢…
探存 cklestl^) cl 5 Testi另存为迟L.
用 F 斗r \ Ctrl"
LKiI J
ill ・ _ tw4~ I ITj
保砰更改awT(H.'
侵 m(p)^
D打印设畫tw… Ctrl+P
I 妝加乩別唱.・
调用这个DLL
再新建一个Exe工程
在这个Exe工程里找到并引用刚才生成的 DLL
引用-工徘1
可用的引用広】
Tibulsr Hati 匚ontral 1. 1 7yp& Library 二UDEF隅<■ l.D僞懦傻儒储懐伶俏
TAOFramQ 1 0 Type Library _ -TAPI3 Tmdnal Mwag?r 1.0 Type Library T^skScheduLer I. 1 Type Library Tepe qAFODUl i b ~w
Tire adFictoryLib v4. 0 EyALUkTIOH TIF DTVParsfiLife 1.0 Typs Library TinvpMLl
TMi croso E< SQL S *rvsr T^rmLoolsup Traniforn 〒
Tifil & 1 H TTEQ Tih严■FIZ
“Mt 优先级 确定
歐消
測览⑹…
也可以通
过”浏览" 找到这个 Btt
定位:C: \Users VAiluii ni stF aior \Desktci 讥新建文件夹讥“t.Jll i吾言;标准
在Exe工程里使用
Opti 6ri E^^ll ci +
Frivats Sub Conifn9ik(ll_Click )
Din t AM -?liT*stl
1 = N«w clETeitl
t FlyNsgbox 训.1 寸m"
End Sub
生成Exe文件,并关闭Exe工程,运行此 Exe文件,点击测试 DLL 运行效果
导 Forml | a I E
关闭Exe,修改DLL工程的属性,并修改 DLL的cIsTestl.MyMsgbox 方法
1 Op
t i ftn Fvpl V
Pufcli □ Sub Myffl Imsg^tr hs: St.ri xig
End Sub
\
我■«肖微把它改感这样
重新编译生成新的 DLL,并再次运行刚才的 Exe文件,点击 测试DLL查看效果:
S Forml | a
这说明一点,通过 DLL我们不需要重新编写编译 Exe文件,只要重新编译 DLL文件即可 在实际编程中,各个 DLL各司其职,组成功能强大,分工明确的软件
比如QQ旋风
本(D:) > QQDownload ►
l(v)工ME須厉(H)
共享丁 新建文件夹
Browser
BT
eMule
A. TXSSO
XFSKin
|W| atl80.dll
Extract, dll
圃 MediaFilter.dll
J mfc80u.dll g
MSVCIRT.DLL 同
msvcp80.dll msvcr80.dll
冈
MSVCRT.DLL
£ QQDownload.dll
QQIEHelper01.dll 同
tinyxml.dll _
TNProxy.dll 」Win7Feature.dll
xcore.dll
)£
n
)J t t xdownloacl.cdll
丄 xmain.dll
ResError.html
xfgetAllurl.htm
§] xfgeturl.htm 国
xfoffline o n ly.htm
MicrosoftVC80J\TL.manifest
」Mkrosoft.VC80.CRT.manife5t
Microsoft.VC80.MFC.manifest DLL公开函数、方法(直接调用,就像调用公共模块中的公共函数一样)
新建一个DLL,命名为test2,并设置自动生成的 Classi的Instancing属性为
6- GlobalMultiUse (这个类的各种属性和方法可以象简单的全局函数那样被调用。该类的实 例不需要显式创建,因为它会自动创建。 )
生成DLL文件
:沁I
再新建一个Exe工程,并引用这个 DLL,然后调用这个 DLL的函数进行测试匸
ZZf=l - Forml (Codel
Privit* Sub Comm andl_Click() Din B Ai SiDeli
R = A«dd£ (10F 20) HsgBox *1CH2O=* i R
End Sub
运行效果:
导 Forml |
口 ]| 回
uidl T [Click
Opti on Ex plici t
直接调用这个画数,矇普通函数一样