本文向大家介绍VB.NET Declare语句,可能好多人还不了解VB.NET Declare语句,没有关系,看完本文你肯定有不少收获,希望本文能教会你更多东西。
要声明一个DLL过程,首先需要在代码窗口的"通用(General)"部分增加一个VB.NET Declare语句。如果该过程返回一个值,应将其声明为Function:
- Declare Function publicname Lib "libname" [Alias "alias"]
- [([[ByVal] variable [As type]
- [,[ByVal] variable [As type]]...])] As Type
如果过程没有返回值,可将其声明为Sub:
- Declare Sub publicname Lib "libname"
- [Alias "alias"]
- [([[ByVal] variable [As type]
- [,[ByVal] variable [As type]]...])]
缺省情况下,在标准模块中声明的DLL过程,可以在应用程序的任何地方调用它。在其它类型的模块中定义的DLL过程则是模块私有的,必须在它们前面声明Private关键字,以示区分。下面分别介绍声明语句的各个组成部分。
VB.NET Declare语句中的Lib子句用来告诉Visual Basic如何找到包含过程的.dll文件。 如果引用的过程属于Windows核心库(User32、Kernel32或GDI32),则可以不包含文件扩展名,如:
- Declare Function GetTickCount Lib "kernel32" Alias "GetTickCount" () As Long
对于其它动态连接库,可以在Lib子句指定文件的路径:
- Declare Function lzCopy Lib "c:\windows\lzexpand.dll" _
(ByVal S As Integer, ByVal D As Integer) As Long
如果未指定libname的路径,Visual Basic将按照下列顺序查找该文件:
◆.exe文件所在的目录
◆当前目录
◆Windows系统目录
◆Windows目录
◆Path环境变量中的目录
下表中列出了常用的操作系统环境库文件。
动态链接库描述
◆Advapi32.dll高级API服务,支持大量的API(其中包括许多安全与注册方面的调用)
◆Comdlg32.dll通用对话框API库
◆Gdi32.dll图形设备接口API库
◆Kernel32.dllWindows32位核心的API支持
◆Lz32.dll32位压缩例程
◆Mpr.dll多接口路由器库
◆Netapi32.dll32位网络API库
◆Shell32.dll32位ShellAPI库
◆User32.dll用户接口例程库
◆Version.dll版本库
◆Winmm.dllWindows多媒体库
◆Winspool.drv后台打印接口,包含后台打印API调用。
以上介绍VB.NET Declare语句对于Windows的系统API函数,可以利用VB提供的工具API Viewer查找某一函数及其相 关数据结构和常数的声明,并复制到自己的程序中。
【编辑推荐】