最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

VB调用DLL

来源:动视网 责编:小OO 时间:2025-09-28 20:54:51
文档

VB调用DLL

制作好DLL之后,就可以用VB调用它,实现VB调用C程序。VB程序要使用DLL中的函数,首先必须要有特殊的声明,用Declare声明语句在窗体级或模块级或全局模块的代码声明段进行声明,将动态链接库中的函数声明到VB中,供VB程序调用。语句格式为:DeclareSub过程名Lib[Alias"别名]([ByVal参数AS类型]),或为DeclareFunction函数名Lib[Alias"别名]([ByVal参数AS类型])AS类型在声明中首先用Declare关键字表示声明DLL中的函数。在C语
推荐度:
导读制作好DLL之后,就可以用VB调用它,实现VB调用C程序。VB程序要使用DLL中的函数,首先必须要有特殊的声明,用Declare声明语句在窗体级或模块级或全局模块的代码声明段进行声明,将动态链接库中的函数声明到VB中,供VB程序调用。语句格式为:DeclareSub过程名Lib[Alias"别名]([ByVal参数AS类型]),或为DeclareFunction函数名Lib[Alias"别名]([ByVal参数AS类型])AS类型在声明中首先用Declare关键字表示声明DLL中的函数。在C语
制作好DLL之后,就可以用VB调用它,实现VB调用C程序。VB程序要使用DLL中的函数,首先必须要有特殊的声明,用Declare声明语句在窗体级或模块级或全局模块的代码声明段进行声明,将动态链接库中的函数声明到VB中,供VB程序调用。 

语句格式为:Declare Sub 过程名Lib [ Alias " 别名]([ByVal 参数AS类型]),或为Declare Function函数名Lib [Alias " 别名]([ByVal 参数AS类型])AS类型在声明中首先用Declare关键字表示声明DLL中的函数。在C语言中有的函数类型为VOID,它表示不具有返回值,则必须用关键字Sub将其声明成过程。有的函数具有返回值,则必须用关键字Function将其声明成函数,并且在声明语句的最后要用AS关键字指明函数返回值的类型。 

例如上面的ADD.DLL在VB中就可以声明为: 

Declare Function ADD Lib c:\\ADD.dll―ByVal X AS Integer, ByVal Y AS Integer ,ByVal filein as 

string)AS Integer 

通过此声明语句将函数ADD声明到VB中,便可直接调用。

Declare语句只能调用标准DLL,而不能用于调用ActiveX DLL,这是你程序出错的原因。VB无法生成标准DLL,只能生成ActiveX DLL。调用ActiveX DLL,一般通过CreateObject语句或在Project|Reference中引用。

如何创建和使用最少的 ActiveX 组件在 VB 中

步骤 1: 创建服务器

1. 在 Visual Basic 中启动一个新的项目。 选择 ActiveX EXE 或 ActiveX DLL。  

2. 从 Project 菜单,选择添加模块,然后模块。  

3. 在 Module 1 的通用声明部分中键入下面的代码:       Sub Main ()

      

注意: End Sub 将自动为您添加。  

4. General Declaration section of Class1 to add following code:       Public MyString As String

      Public Function MyFunction() As String

         MyFunction = "You never know what you're gonna get."

      End Function

      Public Sub Class_Initialize()

         MyString = "Life is like a box of chocolates."

      End Sub

      

 

5. 在 Class 1 的属性窗口,设置以下属性:     Property      Value

    ------------------------------------

    Instancing    5 - MultiUse

      

 

6. 从项目菜单,选择 Project 1 属性。 在常规选项卡,从启动对象列表中选择 Sub Main 并单击确定。  

7. by from Run menu choosing Start or by pressing F5 key start program。 

您现在有一个完整的 (尽管受) OLE 自动化服务器。 更高版本,您可以从文件菜单来创建可用,而不必运行该项目的 ActiveX 组件选择 Project 1 EXE 或生成 Project 1 DLL。 现在,在您想自动完成您的服务器。  

8. 最小化 Visual Basic。  

回到顶端

步骤 2: 创建客户端访问服务器

1. 启动 Visual Basic 的第二个副本。 此时将创建一个新的项目 (Project 1) 与默认窗体 (Form 1)。  

2. 将下面的代码添加到 Form 1 的相应的事件:       ' In the General Declarations section:

      Private MyObj As Object

      Private Sub Form_Load ()

         Set MyObj = CreateObject("Project1.Class1")

      End Sub

      Private Sub Form_Click()

         Print MyObj.MyString

         Print MyObj.MyFunction

      End Sub

      Private Sub Form_Unload (Cancel As Integer)

         Set MyObj = Nothing

      End Sub

      

 

3. by from Run menu choosing Start or by pressing F5 key start program。  

4. 单击 Form 1。 以下文本是输出到 Form 1 上: 

life is like of chocolates box。

您永远不会知道您是 gonna 获取。  

Form 1 加载时, 它实例化您的 ActiveX 组件的一个副本。 在上单击,它使两个 OLE 调用: 一个检索 MyString 公用变量,另一个用来调用 MyFunction 公共函数的值。 

Form 1 卸载时,它会破坏其创建的 ActiveX 组件的实例。 如果这是在内存中的最后一个实例,是从以及内存中删除服务器进程。

文档

VB调用DLL

制作好DLL之后,就可以用VB调用它,实现VB调用C程序。VB程序要使用DLL中的函数,首先必须要有特殊的声明,用Declare声明语句在窗体级或模块级或全局模块的代码声明段进行声明,将动态链接库中的函数声明到VB中,供VB程序调用。语句格式为:DeclareSub过程名Lib[Alias"别名]([ByVal参数AS类型]),或为DeclareFunction函数名Lib[Alias"别名]([ByVal参数AS类型])AS类型在声明中首先用Declare关键字表示声明DLL中的函数。在C语
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top