VB6.0调用API

如题,请不要复制粘贴,最好可以截图给实例

一般来说都是Private Declare Function ...或者Private Declare Sub...
给你个例子
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
给你个查询API的网站
http://www.vbgood.com/api.html追问

在哪里声明,我小白,截下图

追答

和const,type一起在程序顶部,所有过程之前

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-08-23
用api的
Private Declare Sub GetSystemTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)
Private Type SYSTEMTIME
wYear As Integer
wMonth As Integer
wDayOfWeek As Integer
wDay As Integer
wHour As Integer
wMinute As Integer
wSecond As Integer
wMilliseconds As Integer
End Type

Private Sub Command1_Click()
Dim yue, ri As String
Dim nowtime As SYSTEMTIME
GetSystemTime nowtime
yue = Format(nowtime.wMonth)
ri = Format(nowtime.wDay)
Text1.Text = yue
Text2.Text = ri
End Sub
第2个回答  2014-08-23
API是一个操作系统或某个程序本身提供给其他程序使用的函数。
VB中使用API之前,需要先对API进行声明,声明的方法是使用Declare关键字,如:
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
声明了一个名为SendMessage的API函数。许多API的声明可以在API浏览器中找到,而且本文在讲述一个API时也会给出声明,更深入的知识将在以后讲述。
多数API函数都使用了句柄,句柄是Windows系统赋予内存中每一个对象,包括窗口、按钮(其实也是一种窗口)或者文件、图标、菜单等等所有东西的标识。上面的SendMessage中的hwnd 就是句柄。
以下以文本框的undo和redo为例的代码:
Const EM_UNDO As Long = &HC7 '定义常量
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long'声明函数

Private Sub Command1_Click()
SendMessage Text1.hwnd, EM_UNDO, 0, 0‘text1.hwnd为text1的句柄,向text1发送undo消息
End Sub