vb封装dll实例讲解(一)

vb封装dll实例讲解(一)

ID:25145390

大小:178.00 KB

页数:5页

时间:2018-11-18

vb封装dll实例讲解(一)_第1页
vb封装dll实例讲解(一)_第2页
vb封装dll实例讲解(一)_第3页
vb封装dll实例讲解(一)_第4页
vb封装dll实例讲解(一)_第5页
资源描述:

《vb封装dll实例讲解(一)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、VB封装DLL实例讲解(一)一、DLL基本概念(一)概念DLL即动态链接库(DynamicLinkLibrary),是由可被其它程序调用的函数集合组成的可执行文件模块。DLL不是应用程序的组成部分,而是运行时链接到应用程序中。(二)主要优点:1、多个应用程序可以共享一个DLL,而且当多个应用程序调用库的同一个函数时,可执行文件中装入的只是该函数的内存地址,从而节省内存和磁盘空间;2、使用动态链接库易于我们维护用户程序,即使对动态链接库进行修改也不会影响用户程序;3、从ACCESS角度而言,还可以更好的确保核心代码的安全。二、用VB封装VBA代码,构

2、建自定义的DLL动态链接库(一)ACCESS中实例代码下面是一个“快速提取字符串中数字.mdb”实例(该实例在文件包中),单击“提取结果”按钮,将文本框中的数字在弹出消息显示出来。我将就这个实例演示如何将该实例VBA代码封装成为DLL。?按钮单击事件代码如下:PrivateSubCmdFindnumber_Click()DimstrMAsString'初始字符串DimstrOutAsString'输出字符串变量DimIstrM=Me.Text1'从第一个字符向最后一个字符循环,以提取每个字符ForI=1ToLen(strM)'判断是否为0到9字符,

3、是则赋值输出IfMid(strM,I,1)Like"[0-9]"ThenstrOut=strOut&Mid(strM,I,1)EndIfNextI'用MsgBox函数进行输出测试MsgBoxstrOutEndSubM以上代码还不能直接用于封装,须将其修改成为公用函数(过程)(二)VB封装实例中VBA代码步骤一:在VB编辑窗中,点菜单【文件】-【新建工程】,打开新建工程窗口1、点选ActiveXDLL2、点确定步骤二:修改工程名,这即生成的DLL库名1、修改工程名为:我的动态库步骤三:修改类名1、改类名为:提取数字步骤四:在代码窗口输入如下代码。将A

4、CCESS中的单击事件代码,略做修改成为一个公用函数,然后复制到VB代码编辑窗口?代码如下'将这前的ACCESS代码改成一个公用函数'输入:strPutString字符串变量,需分离数字的字符串'输出:fFindNumber字符串变量,得到的数字字符PublicFunctionfFindNumber(strPutStringAsString)AsStringDimstrOutAsString'输出字符串变量DimI'从第一个字符向最后一个字符循环,以提取每个字符ForI=1ToLen(strPutString)'判断是否为0到9字符,是则赋值输出I

5、fMid(strPutString,I,1)Like"[0-9]"ThenstrOut=strOut&Mid(strPutString,I,1)EndIfNextI'数字输出fFindNumber=strOutEndFunction步骤五:编译DLL,点菜单【文件】-【生成我的动态库.dll】,VBA代码封装DLL就完成了。一、在mdb中调用自定义DLL动态链接库(一)新建数据库及窗体新【快速提取数字(DLL)实例.mdb】数据库,新建一个窗体【frmMain】,在窗体添文本框【text0】,按钮【CmdFindNum】,Caption属性:“提取

6、数字”(见下图)(二)引用【我的动态库.dll】库按【Alt+F11】打开VBE窗口,点菜单【工具】-【引用】,打开引用对话框,完成对我们自己编译的DLL的引用。2、选择引用的DLL3、点打开1、点浏览4、点确定(三)在【CmdFindNum】按钮单击事件中加入如下代码。PrivateSubCmdFindNum_Click()'申明自定义类DimMyFindNumAs提取数字DimstrOutAsString'实例化"提取数字类"对象SetMyFindNum=New提取数字'将函数输出结果赋值给自定义字符串变量strOut=MyFindNum.fF

7、indNumber(Text0)'在消息框中显示MsgBox"你提取的数字为:"&strOut,vbInformation,"江羽提示:"EndSub点击保存后,你就可以运行一下窗体测试你的成果了M本文实例见实例包,下载测试如果提示错误,请重新对自定义类库进行引用。本文只是通过一个简单的实例演示了,如何通过VB封装一般的VBA中代码,因为该代码中并未涉及到ACCESS应用程序对象,所以在VB中没有对ACCESS对象类库进行引用,另外实例中只是简单演示了,如何手动实现对DLL的注册引用,在后续文章中我将就如何实现DLL与ACCESS应用程序对接及DL

8、L的自动注册及引用结合实例进行讲解。江羽2010-05-16晚

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。