VB中的API声明

VB中的API声明,第1张

API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。 API 并非只是由 Windows 提供的. 谁也可以提供 API 函数供 VB 调用. 当然你也可以. 但大多书籍只介绍了 Windows 提供的众多 API 函数.

可以用另一种逻辑理解 VB 中调用的 API 函数:

在 VB 中调用由其他语言写的(也可以包括由 VB 写的) 函数. 这些函数是公开的.

例如你可以使用 C 来写一些有用的函数, 当你需要在 VB 中完成同等的功能时, 你至少有两种选择:

1. 用 VB 语言来改写 C 的函数 (可谓内部函数), 每当某项目需要此功能时就重写一遍吧

2. 直接调用 C 语言已经写好的函数 (可谓外部函数), 与多少项目无关, 任何项目都可使用, 不必再写了.

对于第 2 种情形, 就相当于 API 调用了.

API 通常被封装在 动态库 (DLL) 或者 ActiveX 控件/库中(也是动态库).

在 VB 怎么调用?

在 VB 中需要调用动态库中的函数时, VB 语言有个 Declare 关键字. 该关键字的作用是对需要调用的函数先进行声明(这个声明的解释是: Declare 语句告知 VB 运行库, 调用的 API 的函数名或序号是什么, 这个函数在哪个 动态库 中, 有什么参数, 返回什么).

例如:

Private Declare Function FlashWindow Lib "user32.dll" (ByVal hWnd As Long, ByVal bInvert As Long) As Long

这个例子声明了一个 FlashWindow 的 Windows 提供的 API 函数, 它叫 FlashWindow, 在 User32.dll 中 (user32.dll 是 Windows 自带的, 所以 它是 Windows 提供的 API 函数), 有两个参数, 返回 Long 值.

至于函数的功能这里就不详细介绍了.

声明后, 你就可以像使用自己写的函数一样调用了:

FlashWindow Me.hWnd, 0

所以你最后 一个问题: 有多少 API 函数. 这个问题是没有意义的, API 函数可以有无限多.

看书籍可以尽快熟悉 API 的调用机制及原理, 同时也是对 Windows 的理解更进一步(因为这些书籍多数是以 Windows 提供的 API 为例子的).

除了 Declare 可以使用其他语言提供的 API 外, 引用 ActiveX 其实也是 API 的调用, 不过习惯上不这么叫罢了. 例如 VB 人员经常使用的 ADO, 其实正是使用了 ADO 动态库提供的众多 API 函数. (ActiveX 提供的 API 使用比需要 Declare 声明的更广更容易. 而且它可以在 VB 的对象浏览器中查阅.)

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

再次, API 不是 Windows 独有的, 它可以由任何人提供. 所以没有 API 大全, 最多 只是 Windows API 大全(新推出的 Windows 可能会提供更多的新 API, 或者丢弃一些过时的旧 API). 这一点不要被误导.

第一步:打开vb在vb顶部的菜单上点击: “外接程序”——>“外接程序管理器...”——>打开“外接程序管理器”对话框,

第二步:在“可用外接程序”里选中“vb 6 API Viewer ”;

第三步:再在“加载行为”中把“在启动中加载”和“加载/卸载”两个选项前打上钩。点击“确定”关闭对话框。

第四步:再次打开“外接程序”里边就出现了“API 浏览器”

第五步:打开“API浏览器”后,单击菜单上的“文件”,选择“加载文本文件...” ,打开“选择一个API文本文件”对话框

第六步:选择“WIN32API.TXT”


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11436646.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存