`
isiqi
  • 浏览: 16362375 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

怎样在VB中声明和使用API函数~

阅读更多

一、在VB中声明API函数有两种方法:如果我们只在某个窗体中使用API函数,我们可以在窗体代码的General部分声明它:


声明的语法是:
Private Declare Function ...
Private Declare Sub.....


这里必须采用Private声明,因为这个API函数只能被一个窗体内的程序所调用。


如果我们的程序有多个窗体构成,而且我们需要在多个窗体中使用同一个API函数,就需要在模块中声明了。


先添加一个模块(先建一个新窗体,再在form1处右键添加模块,即可),

然后采用如下语法声明:
Public Declare Function....
Public Declare Sub....


Public声明的含义是把API函数作为一个公共函数或过程,在一个工程中的任何位置(包括所有的窗体和模块)都能直接调用它。 声明完毕我们就能在程序中使用此API函数了。


二、可采用以下几种方式使用API函数,以SetWindowPos函数为例:


(1)忽略函数返回值的调用:
SetWindowPos Form1.hWnd, -2 ,0 ,0 ,0, 0, 3
注意此时函数的参数是不加括号的。


(2)Call方法调用:
Call SetWindowPos(Form1.hWnd, -2, 0, 0, 0, 3)
注意这里需要加上括号,但我们不取回函数的返回值。


(3)取得函数返回值的调用:
MyLng = SetWindowPos(Form1.hWnd, -2, 0, 0, 0, 3)
此时需要加上括号,而且我们必须事先定义一个变量(变量的类型与函数返回值类型相同)来存储API函数的返回值。


三、几个问题的说明:


(1)声明中的Lib 和 Alias 是怎么回事:
一般情况下WIN32API函数总是包含在WINDOWS系统自带的或是其它公司提供的动态连接库DLL中,而Declare语句中的Lib关键字就用来指定DLL(动态连接库)文件的路径,这样VB才能找到这个DLL文件,然后才能使用其中的API函数。如果我们只是列出DLL文件名而不指出其完整的路径的话,VB会自动到.EXE文件所在目录、当前工作目录、WINDOWS\SYSTEM目录、WINDOWS目录下搜寻这个DLL文件。所以如果所要使用DLL文件不在上述几个目录下的话,我们应该指明其完整路径。
Alias用于指定API函数的别名,如果我们调用的API函数要使用字符串(参数中包含String型)的话,Alias关键字是必须的。这是因为在ANSI和Unicode字符集中同一API函数的名称可能是不一样的,为了保证不出现声明错误,我们使用Alias关键字指出API函数的别名,一般来说在WIN9X平台下我们把API函数名后加一个大写A作为别名即可。


(2)常见的API参数类型的说明
API函数的参数中最常见的是长整Long型数据类型,例如API中的句柄、一些特定的常量、函数的返回值都是此类型 的值;另外几种常见的参数类型有:整型Integer、Byte型、String型等。


(3)声明中的ByVal是作什么用的
这跟VB的参数传递方式有关,在默认情况下VB是通过地址传递方式传递函数的参数、而有些API函数要求必须采用传值方式来传递函数参数(这两种参数传递方式是不同的,前者传递的是一个指针,而后者要求是参数真实的值)。这样就会发生错误,解决的办法是在API函数参数声明的前面加上ByVal关键字,这样VB就采用传值方式传递参数了。


(4)怎样得到完整的API函数声明
VB自带了API文本查看器API TEXT VIEWER,我们可以在其中找到API函数的完整声明,然后把它粘贴到程序中即可

分享到:
评论

相关推荐

    --API函数快速入门--怎样在VB中声明和使用API函数--...

    在VB中,声明API函数通常涉及以下几个步骤: 1. **使用`Private Declare`或`Public Declare`语句**: - `Private Declare`:如果API函数只在当前模块内使用,则可以使用此声明方式。这种方式下,API函数只能被该...

    vb api 函数使用手册

    1. **声明API函数**:在VB中,使用` Declare`语句来声明API函数,指定函数名、参数类型和返回值类型。例如: ```vb Private Declare PtrSafe Function GetTickCount Lib "kernel32" () As Long ``` 这里声明了`...

    VB6环境纯Win32 API函数写窗口,VB6使用Unicode版API函数Demo

    在实际开发过程中,开发者通常会使用`Declare`语句在VB6中导入API函数,同时配合使用`Type`定义结构体,以及错误处理机制来确保程序的稳定性和兼容性。 总之,VB6环境下使用Win32 API函数和Unicode版本的API函数是...

    VB-API函数使用手册

    《VB-API函数使用手册》是一本专为VBA(Visual Basic for Applications)开发者设计的实用指南,涵盖了在VBA编程中使用API(Application Programming Interface)函数的广泛知识。API函数是Windows操作系统提供的一...

    在vb中调用API函数的简单介绍

    在掌握了如何声明API函数之后,接下来就是如何在代码中使用它们。以下是以`SetWindowPos`函数为例的三种调用方式: 1. **忽略返回值的调用**: - 直接调用函数而不需要获取返回值。 ```vbnet SetWindowPos Form1...

    VB声明API函数详解手册

    3. **函数别名**:`Alias`关键字用于指定函数在DLL中的真实名称,因为有时API函数在DLL内部的名称可能与我们在VB中使用的名称不同。 4. **参数声明**:VB中的API函数参数可以是各种数据类型,如`Integer`, `Long`, ...

    VB-API.rar_vb api_vb api函数手册_vb中 api函数参考

    1. **声明API函数**:首先,需要在VB模块中声明API函数,指定函数名、参数类型和返回值类型。例如: ```vb Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hWnd As Long, ...

    vb api 函数大全

    1. **API调用语法**:在VB中,调用API函数通常使用`Declare`语句声明API函数,指定函数名、库名、返回类型和参数类型。例如: ```vb Declare Function GetTickCount Lib "kernel32" () As Long ``` 这个例子声明...

    vb调用api函数工具软件

    1. **声明API函数**:在VB中,需要使用` Declare`语句来声明API函数,指定函数名、返回类型和参数列表。 2. **指定DLL**:API函数通常位于动态链接库(DLL)中,因此需要指定DLL的名称。 3. **调用API函数**:声明后...

    VB6.0 调用API函数控制显示器

    1. **声明API函数**:在VB6.0中,我们需要使用`Declare`语句来声明API函数。例如,用于控制显示器的API函数可能来自Windows API的`PowrProf`库,如`SetSuspendState`或`ChangeDisplaySettings`。声明时需要指定函数...

    VB api函数大全

    1. **声明API函数**:首先需要在VB模块中声明API函数,声明时需要指定函数名、返回类型和参数列表。例如: ```vb Private Declare Function MessageBox Lib "user32" Alias "MessageBoxA" (ByVal hWnd As Long, ...

    VB API函数参考手册

    1. 声明API函数:使用`Declare`语句在模块中声明API函数,指定函数名、库名、返回类型和参数类型。 2. 加载动态链接库(DLL):有些API函数位于特定的DLL文件中,需要先使用`LoadLibrary`函数加载DLL。 3. 调用函数...

    VB调用API函数方法详解

    在VB中,API函数的声明通常使用`Declare`语句完成。在给出的示例中: ```vb Private Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" _ (ByVal lpExistingFileName As String, ByVal lpNewFileName As...

    VB声明API函数详解

    总结来说,VB声明API函数是通过`Declare`语句完成的,它涉及到函数名、库名、返回类型和参数。掌握API函数的声明和使用对于提升VB程序的功能性和灵活性至关重要,也是进阶VB编程的必经之路。通过不断实践和学习,...

    VB API函数教程

    1. **声明API函数**:在使用API函数前,需要在VB程序中声明它的原型。这通常使用`Declare`语句完成,包括函数名、返回类型、参数类型和库名。例如,声明一个API函数`MsgBox`来自`User32.dll`库: ```vb Declare ...

    超强VB API函数查询

    【VB API函数查询】是针对Visual Basic编程语言的一个强大工具,它允许开发者高效地查询和使用API函数。API(Application Programming Interface)函数是操作系统提供的功能调用,让程序员可以直接访问系统资源,...

    VB使用API函数实现任务栏的显示与隐藏

    在本案例中,我们关注的是如何使用API函数来控制任务栏的显示与隐藏。任务栏是Windows操作系统中一个不可或缺的部分,通常位于屏幕底部,包含“开始”按钮、已打开应用程序的窗口以及通知中心等元素。 首先,我们...

    API函数在VB中的应用

    然而,由于API函数通常是以C语言编写,因此在VB中使用时需要声明其函数签名,包括返回类型、参数类型及DLL名称。 #### 三、示例:使用API函数关闭Windows 1. **函数声明**:首先,在代码模块中声明一个API函数。...

    vb api使用手册

    1. **导入API函数**:首先,你需要使用`Declare`语句在VB模块中声明API函数。这会指定函数的名称、参数类型和返回值类型。例如: ```vb Private Declare Function MessageBox Lib "user32" Alias "MessageBoxA" ...

Global site tag (gtag.js) - Google Analytics