Windows API函数大全.doc

上传人:飞****9 文档编号:127902316 上传时间:2020-04-07 格式:DOC 页数:17 大小:237KB
返回 下载 相关 举报
Windows API函数大全.doc_第1页
第1页 / 共17页
Windows API函数大全.doc_第2页
第2页 / 共17页
Windows API函数大全.doc_第3页
第3页 / 共17页
Windows API函数大全.doc_第4页
第4页 / 共17页
Windows API函数大全.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《Windows API函数大全.doc》由会员分享,可在线阅读,更多相关《Windows API函数大全.doc(17页珍藏版)》请在金锄头文库上搜索。

1、Windows API函数我们知道VB可以做很多事,但是有些事情,特别是涉及对Windows操作系统的访问,还需要借助Win32 API函数(Microsoft Win32 Application Programming Interface的缩写)。API函数是一组用C语言编写的函数,总共约有一千来个。原本是为C语言编程人员而编写的,但也可以在VB应用程序中调用。按功能划分,Win32 API函数大致涉及以下几个方面:窗口管理、图形设备接口、系统管理和多媒体技术。Win32 API函数以动态链接库DLL提供给用户,可以在任何语言中调用。DLL在程序运行时装入,随时响应程序的调用,不必在设计时就

2、将文件存放在工程中,这就是动态链接的意思。正因为如此,一个DLL程序可以同时为多个程序所调用。在VB中引用API函数,需要事先通过Declare函数,声明要引用的DLL文件名称以及相应函数的参量。然后便可像使用VB函数一样使用API函数。 我们看以下类似的声明语句:Declare Function GetComputerName Lib kernel32 Alias GetComputerNameA (ByVal lpBuffer As String, nSize As Long) As LongGetComputerName是API函数名,kernel32是库名。括号中的ByVal lpBu

3、ffer As String, nSize As Long就是函数的参量。最后面的Long表示函数返回值的数据类型。本节通过例子说明Win32 API函数的应用。Windows在创建每个窗体时,都会赋给它一个与众不同的编号,这就是窗体的句柄。 在Windows中,窗体与控件都被看成是窗体(窗口)。窗体的句柄保存在自己的hwnd属性中。一GetComputerName【功能说明】函数用于获得计算机的名称【函数声明】Declare Function GetComputerName Lib kernel32 Alias GetComputerNameA (ByVal lpBuffer As Stri

4、ng, nSize As Long) As Long【返回值】Long,TRUE(非零)表示成功,否则返回零。会设置GetLastError【参数表】参数类型及说明lpBufferString,参数返回计算机的名称nSizeLong,参数返回lpBuffer参数的字符长度【示例】Private Sub Command1_Click()Dim name As String, length As Long length = 255 name = String(length, 0) ZYJMod1.GetComputerName name, length 通过函数测得的电脑名称存放在变量Name中

5、name = Left(name, length) Label1.Caption = nameEnd Sub二、GetCursorPos【功能说明】函数返回鼠标指针的当前位置【函数声明】Declare Function GetCursorPos Lib user32 (lpPoint As POINTAPI) As Long【返回值】Long,非零表示成功,零表示失败。会设置GetLastError【参数表】参数类型及说明lpPointPOINTAPI,参数返回鼠标的x,y位置坐标。【示例】Private Sub Command1_Click()Dim point As POINTAPI Ge

6、tCursorPos point 通过函数获得鼠标的x,y位置坐标存放在变量point MsgBox (x,y)=( & point.x & , & point.y & ), , 鼠标位置End Sub 三、GetWindowsDirectory【功能说明】函数能获取Windows目录的完整路径名。【函数声明】Declare Function GetWindowsDirectory Lib kernel32 Alias GetWindowsDirectoryA (ByVal lpBuffer As String, ByVal nSize As Long) As Long【返回值】Long,实际

7、存入lpBuffer缓冲区的字符数目,如lpBuffer不够大,不能容下文件名,则返回值为实际要求的缓冲区长度。零表示失败。【参数表】参数类型及说明lpBufferString,指定一个缓冲存储器,用于存放Windows目录名。nSizeLong,参数是这个缓冲存储器的大小【示例】Sub getwindowsdirectory_test() Dim s As String, length As Long s = String(MAX_PATH, 0) length = GetWindowsDirectory(s, MAX_PATH) s = Left(s, InStr(s, Chr(0) -

8、1) MsgBox Windows路径= & s, , GetWindowsDirectoryEnd SubWindows API函数四、ClipCursor【功能说明】将指针限制到指定区域。【函数声明】Public Declare Function ClipCursor Lib user32 Alias ClipCursor (lpRect As Any) As Long【返回值】Long,非零表示成功,零表示失败。会设置GetLastError【参数表】参数类型及说明lpRect指定一个矩形,用像素屏幕坐标系统表示。鼠标指针必须在这个区域内运动。可用它传递一个0,禁止指针剪切,恢复常规运作

9、状态【示例】Private Sub Command1_Click() Dim r As RECT r.Left = 0: r.Top = 0 r.Right = 320: r.Bottom = 200 ClipCursor rEnd SubPrivate Sub Command2_Click() ClipCursor 0End Sub五、GetProfileInt【功能说明】取得win.ini初始化文件中指定条目的一个整数值【函数声明】Public Declare Function GetProfileInt Lib kernel32 Alias GetProfileIntA (ByVal l

10、pAppName As String, ByVal lpKeyName As String, ByVal nDefault As Long) As Long【返回值】Long,找到条目的值;如指定的条目未找到,就返回默认值。如找到的数字不是一个合法的整数,函数就会返回其中合法的一部分。例如,对于“xyz=55zz”这个条目,函数会返回55。这个函数也能理解采用标准C语言格式的十六进制数字:用0x作为一个十六进制数字的前缀所以0x55ab等价于vb的&H55AB【参数表】参数类型及说明lpAppNameString,欲在其中搜索条目的小节名。这个字串不区分大小写lpKeyNameString,欲

11、获取的项名或条目名。这个字串不区分大小写nDefaultLong,指定在条目未找到时返回的默认值【示例】Private Sub Command1_Click() Dim speed As Long speed = GetProfileInt(Windows, DoubleClickSpeed, 0) MsgBox windows & vbCrLf & DoubleClickSpeed= & speed, , GetProfileIntEnd Sub六、GetProfileString【功能说明】取得win.ini初始化文件中指定条目的一个字符串值【函数声明】Declare Function G

12、etProfileString Lib kernel32 Alias GetProfileStringA (ByVal lpAppName As String, ByVal lpKeyName As String, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long) As Long【返回值】Long,复制到lpReturnedString缓冲区的字节数量,其中不包括那些NULL中止字符。如lpReturnedString缓冲区不够大,不能容下全部信息,就返回nSize-1(若lpAp

13、pName或lpKeyName为NULL,则返回nSize-2)【参数表】参数类型及说明lpAppNameString,要在其中查找条目的小节名。这个字串不区分大小写。如果为vbNullString,则在lpReturnedString缓冲区装载这个.ini文件的所有小节的一个列表lpKeyNameString,欲获取的项名或条目名。这个字串不区分大小写。如果为vbNullString,则在lpReturnedString缓冲区装载指定小节内所有项的一个列表lpDefaultString,指定条目未找到时返回的默认值。可设为空()lpReturnedStringString,指定一个预先初始化

14、好的字串缓冲区,长度至少为nSize个字符nSizeLong,装载到lpReturnedString缓冲区的最大字符数【示例】Private Sub Command1_Click() Dim S As String, length As Long S = String(1024, 0) length = GetProfileString(windows, programs, , S, Len(S) S = Left(S, length) List1.Clear List1.AddItem programs= & SEnd Sub七、Polygon【功能说明】描绘一个多边形,由两点或三点的任意系

15、列构成。【函数声明】Declare Function Polygon Lib gdi32 Alias Polygon (ByVal hdc As Long, lpPoint As POINTAPI, ByVal nCount As Long) As Long【返回值】Long,非零表示成功,零表示失败。会设置GetLastError【参数表】参数类型及说明hdcLong,用于描绘的设备场景lpPoint在nCount POINTAPI结构数组中的第一个POINTAPI结构nCountLong,多边形的总点数(顶点数)【示例】Private Sub Command1_Click() Dim point(0 To 10) As POINT

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 初中教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号