首页 >> 交流电容器

浅谈API函数在VB中的应用房间温控器

时间:2022/06/30 13:41:35 编辑:

浅谈API函数在VB中的应用

浅谈API函数在VB中的应用 2011年12月09日 来源: 在我们用VB进行应用程序的编制时,虽然VB能够完成几乎所有的Windows应用程序, 不管是图形处理,多媒体应用还是网络编程都可以胜任,而且非常的快捷方便. 但是,在我们需要一些特殊的要求时,仅仅用VB提供的功能还不能实现, 这样的话就达不到实际要求.比如访问操作系统,管理内存等方面利用VB本身就很困难了. 不过不用着急,我们还可以借助于外界的帮助来解决.我们可以通过调用Windows API函数解决VB本身很难达完成的任务.   Windows API函数实际上是一组用C语言编写的函数,因此要在VB中使用必须以一定的方式进行声明.声明以后才可以在VB程序中调用.Windows API是Windows应用程序编程接口(Application Programming Interface)是操作系统支持的函数定义,参数定义和信息格式的集合,可以供其他应用程序调用.Windows API函数分为图形管理函数,图形设备接口函数,系统服务函数和多媒体函数几种.作为动态连接库,API可以被任何语言所调用.在调用时做好调用的接口,即做好API函数的声明.  现在谈谈如何在你的程序中声明API函数.API函数在Windows自带的DLL文件中,他存在于VB应用程序之外的文件中,在使用时必须指定过程的位置和调用参数.声明一个DLL过程可以用 Declare 语句提供这类信息。在声明了API过程之后,可以把它当做 Visual Basic 自己的过程使用。   语法如下:Declare Function name Lib "libname"[Alias Aliasname][([[ByVal]variable[As type][,[ByVal]varaiable[As type]]...])] 其中参数说明如下:Name:必需,在程序中用于识别过程的名称.Lib: 必需,关键字指明包含所声明过程的动态链接库或代码资源.Libname:必需,所声明的过程动态链接库名或者代码资源名.Alias:可选,关键字,被调用的过程在动态链接库(DLL)中的别名.Aliasname:可选,动态链接库或代码资源中的过程名.Variable:可选,调用过程所需的参数.Alias关键字通常在以下情况中使用:1.当外部过程名与某个关键字重名时;2.当动态链接库的过程名与同一范围内的公用变量,常数或其他过程的名称相同时;3.当动态链接库过程中的某个字符不符合动态链接库的命名约定时.以下为常用的动态链接库:动态链接库 描述 Advapi32.dll 高级API服务,支持大量的API,包括许多安全与 注册方面的调用. Comdlg32.dll 通用对话框API Gdi32.dll 图形设备接口API库 Kernel32.dll Windows 32为核心的API支持 Lz32.dll 32位压缩程序 Mpr.dll 多接口路由器库 Netapi32.dll 32位网络API库 Shell32.dll 32位Shell API库 User32.dll 用户接口例程库 Version.dll 版本库 Winmm.dll Windows多媒体库 Winspool.drv 后台打印接口,包含后台打印API调用   看到API函数的声明后会不会发现一个问题呢?没错,在声明时发现API函数的声明语句往往非常复杂,和多API函数的声明语句长达数行,这使得我们在使用API函数时非常的不便,常常记不清声明语句.但是Visual Basic早就为用户想到了这个问题,在VB中内嵌了API浏览器.在API浏览器中可以很直观方便的使用API函数,不再需要去记那些繁琐的关键字和参数了,而你仅仅需要记住要调用的API函数名,一切就搞定了.有关如何在VB中使用API Viewer 这里就不在说明了,读者可以查看有关资料.   光说理论不能使我们真正的体会到使用API函数的实际过程,下面用几个很简单的例子说明如何在VB中调用API函数. 例一:   下例将演示如何调用 Windows API 中的过程。调用函数 SetWindowText 来改变一个窗体的标题栏。当然,在实际应用中,通常我们用 Visual Basic 的 Caption 属性来改变标题栏。该示例的目的在于说明如何声明并调用过程。 首先,在模块的声明部分对过程进行声明:Public Declare Function SetWindowText Lib "user32" Alias "SetWindowTextA" (ByVal hwnd As_ Long, ByVal lpString As String) As Long  过程的精确语法定义可以用 API Viewer 应用程序找到,在 Win32api.txt 文件中也可以找到它。如果将 Declare 放在 Form 或者 Class 模块内,那么必须在它的前面加上 Private 关键字。同一个 API 过程在一个工程中只需声明一次;然后可以任意调用。   调用此 API函数过程:  在声明了函数之后,调用它的方式与标准的 Visual Basic 函数相同。在Form Load 事件调用了上面声明的过程。Private Sub Form_Load()SetWindowText Form1.hwnd, "欢迎使用VB!"End Sub   在运行这段代码时,函数首先使用 hWnd 属性确定要修改标题栏的窗口(Form1.hWnd),然后将标题栏修改为“欢迎使用VB!”。   以上这个简单的程序说明了在VB中声明与调用API函数的过程,使读者有一个理性的认识,下面再说一个比较复杂的例子. 例二:   这个例

经常烦恼失眠健忘是更年期症状吗

敬修堂养血生发胶囊治疗脱发怎么样

出现类风湿性关节炎时疼痛的特点

腰部肌肉劳损怎么办

肾精亏虚吃什么药好

相关资讯