我爱Aspx >> Asp.Net >> 怎样手工声明API| 怎样手工声明API | |
| | |
| 转自: VB爱好者乐园
-------------------------------------------------------------------------------- 尽管 Visual Basic 在 Win32api.txt 中提供了大量的预定义声明,但还是需要知道如何亲自编写声明。例如,有时希望访问用其它语言编写的 DLL 中的过程,或者改写 Visual Basic 的预定义声明,以满足特殊需要。 要声明一个 API 过程,需要在代码窗口的“声明”部分增加一个 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]]...])] 缺省情况下,在标准模块中声明的 API 过程是公有的,可以在应用程序的任何地方调用它。在其它类型的模块中定义的 API 过程是模块私有的,必须在它们前面声明 Private 关键字,以示区分。 一.指定库 Declare 语句中的 Lib 子句用来告诉 Visual Basic 如何找到包含过程的 .API 文件。如果引用的过程属于 Windows 核心库(User32、Kernel32 或 GDI32),则可以不包含文件扩展名: Declare Function GetTickCount Lib "kernel32" Alias _ "GetTickCount" () As Long 对于其它 DLL,Lib 子句指定文件的路径: Declare Function lzCopy Lib "c:\windows\lzexpand.API" _ (ByVal S As Integer, ByVal D As Integer) As Long 如果未指定 libname 的路径,Visual Basic 将按照下列顺序查找该文件: .exe 文件所在的目录 当前目录 Windows 位系统目录(通常为 \Windows\System) Windows 目录(不一定是 \Windows) Path 环境变量中的目录 Ҷƪл˵?һƪ多用户广告轮播的实现
|